npm package.json属性详解
概述
package.json
必须是一个严格的json文件,而不仅仅是js里边的一个对象。其中很多属性可以通过npm-config
来生成
name
package.json
中最重要的属性是name
和version
两个属性,这两个属性是必须要有的,否则模块就无法被安装,这两个属性一起形成了一个npm模块的唯一标识符。模块中内容变更的同时,模块版本也应该一起变化。
name
属性就是你的模块名称,下面是一些命名规则:
-
name
必须小于等于214个字节,包括前缀名称在内(如 xxx/xxxmodule)。 -
name
不能以"_"或"."开头 -
不能含有大写字母
-
name
会成为url的一部分,不能含有url非法字符下面是官网文档的一些建议:
-
不要使用和node核心模块一样的名称
-
name
中不要含有"js"和"node"。 It's assumed that it's js, since you're writing a package.json file, and you can specify the engine using the "engines" field. (See below.) -
name
属性会成为模块url、命令行中的一个参数或者一个文件夹名称,任何非url安全的字符在name中都不能使用,也不能以"_"或"."开头 -
name
属性也许会被写在require()
的参数中,所以最好取个简短而语义化的值。 -
创建一个模块前可以先到后边的网址查查
name
是否已经被占用. https://www.npmjs.com/