更新
This commit is contained in:
+46
@@ -0,0 +1,46 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.uniMainJsPlugin = void 0;
|
||||
const uni_cli_shared_1 = require("@dcloudio/uni-cli-shared");
|
||||
const usingComponents_1 = require("./usingComponents");
|
||||
function uniMainJsPlugin(options = {}) {
|
||||
const normalizeComponentName = options.normalizeComponentName || ((name) => name);
|
||||
return (0, uni_cli_shared_1.defineUniMainJsPlugin)((opts) => {
|
||||
return {
|
||||
name: 'uni:mp-main-js',
|
||||
enforce: 'pre',
|
||||
async transform(source, id) {
|
||||
if (opts.filter(id)) {
|
||||
source = source.includes('createSSRApp')
|
||||
? createApp(source)
|
||||
: createLegacyApp(source);
|
||||
const inputDir = process.env.UNI_INPUT_DIR;
|
||||
const { imports } = await (0, uni_cli_shared_1.updateMiniProgramGlobalComponents)(id, (0, uni_cli_shared_1.parseProgram)(source, id, {
|
||||
babelParserPlugins: options.babelParserPlugins,
|
||||
}), {
|
||||
inputDir,
|
||||
resolve: this.resolve,
|
||||
normalizeComponentName,
|
||||
});
|
||||
const { code, map } = await (0, uni_cli_shared_1.transformDynamicImports)(source, imports, {
|
||||
id,
|
||||
sourceMap: (0, uni_cli_shared_1.enableSourceMap)(),
|
||||
dynamicImport: usingComponents_1.dynamicImport,
|
||||
});
|
||||
return {
|
||||
code: `import '\0plugin-vue:export-helper';import 'uni-mp-runtime';import './${uni_cli_shared_1.PAGES_JSON_JS}';` +
|
||||
code,
|
||||
map,
|
||||
};
|
||||
}
|
||||
},
|
||||
};
|
||||
});
|
||||
}
|
||||
exports.uniMainJsPlugin = uniMainJsPlugin;
|
||||
function createApp(code) {
|
||||
return `${code};\ncreateApp().app.mount("#app");`;
|
||||
}
|
||||
function createLegacyApp(code) {
|
||||
return code;
|
||||
}
|
||||
Reference in New Issue
Block a user