美文网首页
如何使用npm

如何使用npm

作者: 阿鲁提尔 | 来源:发表于2018-04-03 16:03 被阅读0次
如何新建一个npm包

npm init 初始化npm,会创建一个pageage.json。包含npm包的相关信息。


git init
touch README.md index.js .npmignore
//.npmignore用来隐藏上传文件
npm install --save xxx 
//保存到本地,当别人安装的时候,会一起安装到本地
安装后会在pageage.json的dependencies中存在记录

npm install --save-dev xxx 
//自己做开发测试的时候用到的,别人安装的时候,不会一起安装到本地
安装后会在pageage.json的devdependencies中存在记录
如何发布
npm login
//输入npm用户名和密码

npm publish  //上传
如何去用
npm install alutier02 --save
例子
假如发布了一个包 名字叫sayhello

index.js只有一条语句
#!/user/bin/env node  
//系统会默认使用node执行
console.log('hello')

pageage.json添加
"bin":{
  "sayhello":"./index.js"
},
//输入sayhello之后,相当于执行index.js文件

安装该包以后,只要在命令行执行 sayhello
//输出 hello



"scripts": {
    "start":"echo start....",
    "build":"echo build",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
//这里面的东西通过
//npm start 运行;npm test运行
//除了start 和 test之外其他的命令,需要npm run build运行

全局安装
npm install alutier02 --g
//可以全局使用
package.js中的script
npm <command>
"script": {
   "test":"mkdir abc"
}

npm test 就创建一个文件夹abc
npm 后面的命令只能是这里面的其中一个
npm run <command>

对于不是以上命令的,需要 npm run <command>
run可以运行自定义命令。

//例子
"script": {
   "test":"mkdir abc",
   "mk2":"mkdir abc2",
   "delete":"rm -r abc2"
}
npm run mk2  //创建文件夹mk2
npm run delete  //删除文件夹mk2
npm实例
{
  "scripts": {
    "css:scss": "app=node-sass npm run check; node-sass --output-style compressed -o dist/css src/scss",
    "css:autoprefixer": "app=postcss-cli npm run check; app=autoprefixer npm run check; postcss -u autoprefixer -r dist/css/*",
    "css:compress": "app=csso npm run check; csso in.css --output out.css",
    "css:less": "app=less npm run check; lessc --clean-css styles.less styles.min.css",

    "js:webpack": "app=webpack npm run check; webpack",
    "js:webpack:uncompress": "app=webpack npm run check; uglify=0 webpack",
    "js:lint": "app=eslint npm run check; && eslint src/js",
    "js:uglify": "app=uglifyjs npm run check; mkdir -p dist/js && uglifyjs src/js/*.js -m -o dist/js/app.js",

    "image:imagemin": "app=imagemin-cli npm run check; imagemin src/images dist/images -p",

    "server": "app=browser-sync npm run check; browser-sync start --server --files 'dist/css/*.css, dist/js/*.js'",

    "watch": "app=onchange npm run check; onchange 'src/js/*.js' -- npm run build:js",

    "watch:webpack": "onchange 'public/src/js/**/!(bundle.js)' -- npm run webpack:js",
    "watch:all": "app=parallelshell npm run check; parallelshell 'npm run css:autoprefixer' 'npm run js:init' ",

    "check": "[ -z \"$(app=$app node -p 'try{url=process.env.app+\"/package.json\"; require(url).version}catch(e){exports=\"\"}')\" ] && npm i -D $app || echo \"already installed $app\"; "
  }
}

相关文章

网友评论

      本文标题:如何使用npm

      本文链接:https://www.haomeiwen.com/subject/cdwqhftx.html