npm main:用于浏览器repos的index.js
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了npm main:用于浏览器repos的index.js相关的知识,希望对你有一定的参考价值。
我想在npm上发布一些repos。但这些是浏览器回购,因此造成了一个问题:package.json中的main
属性似乎是用于指定节点(而不是浏览器)模块。
来自https://docs.npmjs.com/files/package.json#main
主要
主要字段是模块ID,它是程序的主要入口点。也就是说,如果您的包名为foo,并且用户安装它,然后执行require(“foo”),那么将返回主模块的exports对象。
这应该是相对于包文件夹根目录的模块ID。
对于大多数模块而言,最有意义的是拥有一个主脚本并且通常没有其他内容。
那么我应该将什么用于浏览器回购的npm包?只是省略了字段?指向回购捆绑?别的什么?
答案
我查看了几个浏览器repos,看来这是当前的约定(取自Three.js和Rollup github repos):
- “main”:“build / three.js”,
- “jsnext:main”:“build / three.module.js”,
- “module”:“build / three.module.js”
main
指向<script>
代码,而jsnext:main
和module
指向es6模块。
模块包有一些命名约定:
- foo.module.js
- foo.es.js
- foo.mjs
等等。
上面提到的https://github.com/rollup/rollup/wiki/pkg.module似乎是一个合理的参考。谷歌这个更多:
main jsnext:主模块属性package.json
底线:有惯例但没有标准。
以上是关于npm main:用于浏览器repos的index.js的主要内容,如果未能解决你的问题,请参考以下文章