为什么我的es6代码在npm安装后不能编译?
我用es6创build了一个npm模块。 你可以在这里看到它在github上。
package.json文件中有一些脚本可以确保es6模块的构build。 在npm模块的上下文(目录)中运行npm publish
和npm install
时,它起作用。 在另一个项目中运行npm install
(即将模块作为依赖项)不会构buildes6模块。 在npm-debug.log
文件中似乎也没有任何错误。
我真的很想明白为什么。
这是由于缺less一个.npmignore
文件造成的。 由于没有一个,npm正在使用.gitignore
文件。 这将过滤掉我不想在源代码控制中的dist/
文件夹。 这个提交解决了这个问题
您的脚本缺lessinstall
(或postinstall
)脚本。
如果您正在使用prepublish
编译钩子上的脚本构build代码,那么在其他人安装时不需要再次编译它。 它应该与内置的ES6代码一起发货。
实际上,你可能想把你的src目录添加到你的.npmignore
文件中,这样它就不会附带任何不能直接使用的JS。