我写了一个看起来像这样的ES6模块:
export default function({makeCurrentVerUrl, verUrl, fileServer, downloadTokenType, appId}) { ... }
当由webpack编译时,它看起来像这样:
webpackJsonp([5,7],[ /* 0 */ /***/ function(module, exports) { 'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = function (_ref) { var makeCurrentVerUrl = _ref.makeCurrentVerUrl; var verUrl = _ref.verUrl; var fileServer = _ref.fileServer; var downloadTokenType = _ref.downloadTokenType; var appId = _ref.appId; ... }; /***/ } ]);
哪个好,但我不知道如何运行这个文件并调用我的默认函数.
我可以加入它,
我相信它会自动运行它,但是如何从浏览器中调用我在其中定义的函数?require
未在我的浏览器中定义.
您可以output.library
在配置中进行设置。从文档:
output.library
如果已设置,请将捆绑软件导出为库。output.library
是名字。如果要编写库并想将其发布为单个文件,请使用此选项。
output.libraryTarget
导出库的格式:
"var"
-通过设置变量进行导出:(var Library = xxx
默认)
"this"
-通过设置以下属性导出:this["Library"] = xxx
"commonjs"
-通过设置导出属性来导出:exports["Library"] = xxx
"commonjs2"
-通过设置module.exports进行导出:module.exports = xxx
"amd"
-导出到AMD(可选名称)
"umd"
-导出到AMD,CommonJS2或根目录下的属性默认:
"var"
那你就可以做
myLibrary()