[英]How To Define The Name For A Module With Only Exports In TypeScript
我正在嘗試將大量 TypeScript 文件構建到一個文件中,以便為基於瀏覽器的 TDD 快速加載瀏覽器。 主 index.ts 文件位於此處,如下所示
export * from "./xrm-mock/index";
export { XrmMockGenerator } from "./xrm-mock-generator/index";
最初有兩個獨立的庫,xrm-mock 和 xrm-mock-generator。 很快就確定不需要兩個,並且使用此文件組合兩個庫。 到現在為止還挺好。
我從 npm 引用了這個項目,並使用StealJs在我的單元測試中使用 Karma 加載文件,但加載所有文件大約需要 3-6 秒。 解決方案? 將所有文件打包成一個文件。
我使用了這個構建腳本
tsc --outFile ./build/build.js --module amd
構建單個文件,但在其中,根模塊的名稱默認為 index:
define("index", ["require", "exports", "xrm-mock/index", "xrm-mock-generator/index"], function (require, exports, xrmMock, index_1) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.xrmMock = xrmMock;
exports.XrmMockGenerator = index_1.XrmMockGenerator;
});
當我想將其默認為“xrm-mock”時。
有沒有辦法讓 TypeScript 將名稱轉換為“xrm-mock”而不是 index.ts?
如果不是,那么編輯文件(“js”和“d.ts”)、構建后、用“xrm-mock”替換“index”的最簡單的自動化方法是什么?
正如手冊所述,AMD 模塊名稱可以指定為注釋指令:
///<amd-module name="xrm-mock"/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.