别名

另一种简化命名空间的方法是使用 import q = x.y.z 为常用对象创建较短的名称。不要与用于加载模块的 import x = require("name") 语法混淆,此语法只是为指定符号创建别名。您可以将这些类型的导入(通常称为别名)用于任何类型的标识符,包括从模块导入创建的对象。

Another way that you can simplify working with namespaces is to use import q = x.y.z to create shorter names for commonly-used objects. Not to be confused with the import x = require("name") syntax used to load modules, this syntax simply creates an alias for the specified symbol. You can use these sorts of imports (commonly referred to as aliases) for any kind of identifier, including objects created from module imports.

namespace Shapes {
  export namespace Polygons {
    export class Triangle {}
    export class Square {}
  }
}

import polygons = Shapes.Polygons;
let sq = new polygons.Square(); // Same as 'new Shapes.Polygons.Square()'

k3/mWR7QKnDqCscqKXQiaWSw704mNmvVkD3L54bfi+lA2Ie7kpNONxcDqQO6yHcw9ChIAil1nOHiFbAfjttK232CdaNPud01T9bKF8FpgIFoojxRYerpkbJVSsdcQXnMcDvDpsBRG5t3el+TcUccy8kzVeyMVzgQlGCVWIeat4MAZMfISE0KtnS87Yk83RbEYgenAUjSvfIcfz4xXDC28taD+lAyaMWqYsT1o9FG3Ffhh9Jgn80gykiU813Pv2WulHZg0rMdM47OoKcXWlHOdRny05EsqcukaOwT56sTFT9eEfIFQHKYJjbvZDoM+5Jcmms7GS06Iz89ryZMaq1j2HpEAk5BhDH8tsmJn7nEIF3q7pDtW84aUyT5jei1ofScbHhSpPjWZBQw5A86HuLJSziMS9y8CLeLmou0XdZGpxC8XwizXXnBnSG10mWUIjPfIj+mzrJtOSYoEI3IXQvVGe4caiXUOlpZQmGigOL8XQLAJ9ZT4yEqMXfqEfbCVedA3guAAaQ1HiZlHJXDqEticGmKwmQkFtFioCQ66NZ0jg85G9mvPhGXrO7BhTmzaQXHVV+vnMLyafG7NNyVd+h+6KMFQvVVJ1ORXI0pgLhTfJ9yldEMIcEPnjsNnpkvWujnqv9JiSVh2SPbPPPN4ymJIqTQs+Z1vOkjfMF5jW7vj5ZnWIrW85Dn8KxNt32LwBcF/+i1Kx5mWKIhoRPeoWrLjr4mIRgHtgu0G40vuXP3AZCDLQin0l9z02OzwwnU+Xzmp5GuwwzTj/oM+rRQq9Vu1hjGxNAUcQnIRsqFkdCRYm8oqLv/Q15si23YSAGyjJ2UDWQ003Z1OTg3S2V9CD0Va7FcCEC8RFp4OPfdM+V+KbSRSW9AGckTEl95VckhfDebavembPAn2mq1hSqmZGB01QIUH1XKLoNImGxWaN4l5w+QLdz0bO9U5wjcwkzFRqiIotv5dEzPp0nL9cMN1M5TZvcyslf6LxDsoJjck4pbHYcChNCRbjZ5ENf5BnT7njcJvupk7HJJ4eahAD8QKmjyV9ZrMUW4az6nqzcTvmAowqfACh1Mi+HNgy9RKvpZd8Phz6GQlVUHlx2F5Jo67eYCkyIht4DKRM2rCfnH5vHpG+ki9c7LtV9ADN2hWHHcnAtO