尝试自己写个小模块,在从npm install后,因为需要执行模块里面的脚本,在试过后发现有两种选择:
选择一:一步步的选路径,进入到模块里要执行的脚本目录下,执行脚本 选择二:在当前自己的项目中引入模块后,执行当前自己项目中的脚本
选择一的问题是每次要执行一大串的路径,太麻烦了,后来看到网上说写在package.json里的script里,试过后发现无效。。。 选择二的问题是在执行自己项目的脚本后,虽然能执行模块里的脚本,但是会顺带这把当前自己项目的脚本内容也给执行了。。。
现在就好纠结,希望大家能告知下为什么在script里设置的脚本命令无效
把package.json发上来
@captainblue2013 我自己新建了个项目,然后npm install 了自己的模块 然后在当前的项目的package.json里的scrpti里:
"scripts": {
"start":"node ./node_modules/cn-province-city/index.js -s"
},
有个 -s 是在模块的脚本的一个命令
if(process.argv[2] === '-s' || process.argv[2] === '--save'){
save(process.argv[3]);
}
截图半天传不上去。。。
自己建的项目的目录结构,期望执行的模块脚本为cn-province-city里的index.js
如果不是默认的,需要
npm run xxxx
@i5ting 起作用了,现在是设置当前项目的package.json里的script好使,我想给模块设置script命令,应该怎么弄呢?是不是用Makefile?
@qianjiahao 不是很懂,再说说
@i5ting npm run xxx 是运行当前位置的package.json的script吧,如果是模块的呢?
@i5ting 我希望在任意自己的项目中,使用 引用的模块的命令 ,或者说 给引用的模块指定命令,然后在任意地方执行 , 我试了在自己的项目中设置执行 引用模块的命令 , 是可以运行命令了,但是每次让引用模块的用户去手动的添加scripts,感觉用户体验很差。。。
@i5ting 明白了 配置成全局