假设我正在使用webpack 4并且有一个看起来像这样的项目:
/src/index.js
const Important = "Important Text"
export default Important
global.important = Important
我使用以下webpack confing编译它:
output: {
libraryTarget: 'commonjs2',
},
module: {
rules: [
{ ...babelConfig }
]
}
而package.json
有:
{
...packageJsonContents
"name": "important-project",
"main": "./dist/main.js",
}
这将创建缩小文件/dist/main.js
我将该插件保存为npm testproject
现在我创建另一个项目,配置Webpack和npm install important-project
。
在/src/index.js
:
import Important from 'important-project'
console.log(Important) //prints "Important Text"
这是有效的,但我的目标是将其作为一般使用插件,我也希望能够将其作为脚本标记包含在其他项目中,但是当我将其作为脚本标记包含时,它会抱怨该模块没有定义。
<script src="node_modules/important-project/dist/main.js"></script>
这里的常规方法是什么?我应该创建两个版本吗?一个用于html,另一个用于webpack?