成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

npm入手筆記0x004-npm命令及配置文件說明(未完善)

mzlogin / 774人閱讀

摘要:概述本篇文章承接上文,記錄的的配置和命令的詳細(xì)說明。的配置說明項(xiàng)目名稱,的時(shí)候就是使用這個(gè)。案例說明版本號,符合的版本規(guī)范的版本號,默認(rèn)從開始。

0x000 概述

本篇文章承接上文,記錄的package.json的配置和npm命令的詳細(xì)說明。

0x001 package.json的配置

name

說明:項(xiàng)目名稱,npm install的時(shí)候就是使用這個(gè)name

案例:lodash、@followwinter/lodash

version

說明:版本號,符合npm的版本規(guī)范的版本號,默認(rèn)從1.0.0開始。

案例:1.0.02.0.1

description

說明:項(xiàng)目的簡介,如果不寫會(huì)默認(rèn)讀去README.md的第一樣作為npmjs搜索時(shí)候的簡介

案例:這是一個(gè)好項(xiàng)目

keywords

說明:關(guān)鍵詞

案例:lodashjs

homepage

說明:項(xiàng)目主頁

案例:http://lodashjs.com/

license

說明:協(xié)議

案例:BSD-3-Clause

main

說明:模塊ID

案例:如果你的模塊名為foo,如果一個(gè)用戶使用require("foo"),就會(huì)返回一個(gè)你export出來的主對象。例如之前我們export一個(gè)printMsg,我們直接@followwinter/0x007-local-global-diff1就得到了一個(gè)對象,是因?yàn)槲覀冎付?b>@followwinter/0x007-local-global-diff1中的package.jsonmianindex。js。

//  @followwinter/0x007-local-global-diff1/package.json
{
  "name": "@followwinter/0x007-local-global-diff1",
  "version": "1.0.2",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo "Error: no test specified" && exit 1"
  },
  "author": "",
  "license": "ISC"
}
//  @followwinter/0x008-local-global-diff2/index.js
var myModule = require("@followwinter/0x007-local-global-diff1");
console.log(myModule);
myModule.printMsg();

dependencies

說明:項(xiàng)目的依賴庫

version: 必須等于該版本

>version:必須大于該版本

>=version: 必須大于等于該版本

: 必須小于該版本

<=version: 必須小于等于該版本

~version: 大約等于該版本

^version: 和該版本可兼容的版本

1.2.x1.2.* 版本

http://...http地址

*:任意版本

"":任意版本

version1 - version2: 在version1version2之間,包含version1version2

range1 || range2:在范圍1或者范圍2之間

git...:git地址

user/repouser/repo地址

tag: 該tag的版本

path/path/path 本地地址

案例:

{ "dependencies" :
  { "foo" : "1.0.0 - 2.9999.9999"
  , "bar" : ">=1.0.2 <2.1.2"
  , "baz" : ">1.0.2 <=2.3.4"
  , "boo" : "2.0.1"
  , "qux" : "<1.0.0 || >=2.3.1 <2.4.5 || >=2.5.2 <3.0.0"
  , "asd" : "http://asdf.com/asdf.tar.gz"
  , "til" : "~1.2"
  , "elf" : "~1.2.3"
  , "two" : "2.x"
  , "thr" : "3.3.x"
  , "lat" : "latest"
  , "dyl" : "file:../dyl"
  }
}

特殊說明

git地址格式:://[[:]@][:][:][/][# | #semver:]

git地址示例:

git+ssh://[email protected]:npm/npm.git#v1.0.27
git+ssh://[email protected]:npm/npm#semver:^5.0
git+https://[email protected]/npm/npm.git
git://github.com/npm/npm.git#v1.0.27
//現(xiàn)在還可以直接這么寫
{
  "name": "foo",
  "version": "0.0.0",
  "dependencies": {
    "express": "expressjs/express",
    "mocha": "mochajs/mocha#4727d357ea",
    "module": "user/repo#feature/branch"
  }
} 

本地地址

../foo/bar
~/foo/bar
./foo/bar
/foo/bar
// 以下寫法更優(yōu)

{
"name": "baz",
"dependencies": {

"bar": "file:../foo/bar"

}
}

devDependencies

說明:開發(fā)依賴

案例:同上

bin:

說明:可執(zhí)行目錄

案例:

//`npm installl -g `的時(shí)候回將`cli.js`復(fù)制到`/usr/local/bin/myapp`,就可以使用`myapp`作為命令了,比如`webpack`
{ "bin" : { "myapp" : "./cli.js" } }

scripts:

說明:自定義命令,也可以覆蓋自定義命令

默認(rèn)值:

"start": "node server.js":執(zhí)行server.js

"install": "node-gyp rebuild":安裝依賴

自定義指令:

"test":"jtest",
"build":"npm install && npm test && npm publish --access public"

執(zhí)行自定義指令:
如果是覆蓋默認(rèn)指令,直接使用默認(rèn)指令便可,比如npm installnpm start,如果是自定義指令,則需要使用npm run 來調(diào)用,比如npm run build,會(huì)先執(zhí)行npm install,再執(zhí)行npm test,最后執(zhí)行npm publish --access public.

0x002 npm命令

version:版本

npm version [ | major | minor | patch | premajor | preminor | prepatch | prerelease | from-git]

"npm [-v | --version]" 查看`npm`版本
"npm view  version" 查看某個(gè)包的版本
"npm ls" 列出當(dāng)前依賴的包

cache:緩存

"npm cache clean []" 清除緩存
aliases: npm cache clear, npm cache rm

dedupe:重構(gòu)

"npm dedupe" 重新整理依賴包架構(gòu)
"npm ddp"

aliases: find-dupes, ddp

// 執(zhí)行前

+-- b <-- depends on [email protected]
|   `-- [email protected]
`-- d <-- depends on c@~1.0.9
    `-- [email protected]
    
//執(zhí)行后

+-- b
+-- d
`-- [email protected]

init:初始化

npm init [-f|--force|-y|--yes] 加了參數(shù)就不會(huì)提示任何信息了

install:安裝

npm install (with no args, in package dir)
npm install [<@scope>/]
npm install [<@scope>/]@
npm install [<@scope>/]@
npm install [<@scope>/]@
npm install :/
npm install 
npm install 
npm install 
npm install 

alias: npm i
common options: [-P|--save-prod|-D|--save-dev|-O|--save-optional] [-E|--save-exact] [-B|--save-bundle] [--no-save] [--dry-run]

upinstall:卸載

npm uninstall [<@scope>/][@]... [-S|--save|-D|--save-dev|-O|--save-optional|--no-save]

aliases: remove, rm, r, un, unlink

update:更新

npm update [-g] [...]

aliases: up, upgrade

publish:發(fā)布

npm publish [|] [--tag ] [--access ]

Publishes "." if no argument supplied
Sets tag "latest" if no --tag specified

unpublish:取消發(fā)布

npm unpublish [<@scope>/][@]

whoami:包所屬

npm whoami [--registry ]

dist-tag:加tag

npm dist-tag add @ []
npm dist-tag rm  
npm dist-tag ls []

aliases: dist-tags

config:設(shè)置配置

npm config set   [-g|--global]
npm config get 
npm config delete 
npm config list [-l]
npm config edit
npm get 
npm set   [-g|--global]

aliases: c

adduser:添加用戶

npm adduser [--registry=url] [--scope=@orgname] [--always-auth] [--auth-type=legacy]

aliases: login, add-user

logout:退出用戶

npm logout [--registry=] [--scope=<@scope>]

0x003 總結(jié)

多看官方文檔才是王道,知道如何找到自己想找的資料才是真正的辦法,死命去記是沒有辦法的。

0x004 資源

項(xiàng)目github

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/88525.html

相關(guān)文章

  • npm入手筆記0x001-項(xiàng)目初始化和包增刪改

    摘要:引用并執(zhí)行如果安裝出錯(cuò),比如寫錯(cuò)了包名,將會(huì)發(fā)生以下事情命令行報(bào)錯(cuò)使用可以自己新建一個(gè)文件編寫也可以直接使用來初始化一個(gè)該命令是一個(gè)交互式命令,可以根據(jù)提示輸入相應(yīng)信息生成相應(yīng)的,命令提示后面的中為提示內(nèi)容,可以選擇一路,然后再去修改。 0x001 概述 npm是一個(gè)包管理工具,本文章基本算是對官方文檔的解讀、翻譯和實(shí)操筆記,順便說明使用npm中的坑。 0x002 安裝Node.js ...

    Baoyuan 評論0 收藏0
  • npm入手筆記0x003-一些常見問題記錄

    摘要:如何選擇就如果上面所有,需要打包進(jìn)生產(chǎn)環(huán)境就保存到,只是在開發(fā)或者打包的時(shí)候使用的就保存到即可。提示不能發(fā)布當(dāng)前版本解決方案不能發(fā)布已經(jīng)發(fā)布的版本,修改一下版本號就可以了想不到了,想到了再寫資源項(xiàng)目 0x001 概述 本篇文章承接上文,記錄的是一些使用過程中的疑惑 0x001 墻的原因使得包下載太慢 解決方案:使用淘寶cnpm,推薦使用cnpm,因?yàn)槿绻薷膎pm倉庫,將會(huì)導(dǎo)致無法發(fā)布...

    luffyZh 評論0 收藏0
  • npm入手筆記0x005-v2和v3包依賴管理的不同

    摘要:概述本篇文章承接上文,記錄的和版本在包管理方面的異同,基于閱讀官方原文整理簡化。此時(shí)的文件夾如下所示包的復(fù)制和取消復(fù)制假設(shè)我們有一個(gè)項(xiàng)目依賴添加依賴依賴,此時(shí)添加依賴依賴,此時(shí)升級依賴依賴,此時(shí)升級依賴依賴,此時(shí)執(zhí)行查看文件夾資源項(xiàng)目 0x000 概述 本篇文章承接上文,記錄的v2和v3版本在包管理方面的異同,基于閱讀官方原文整理簡化。 0x001 v2管理方式 假設(shè)有模塊A、B、C,...

    ssshooter 評論0 收藏0
  • npm入手筆記0x002-發(fā)布自己的Node.js模塊其版本管理

    摘要:概述本篇文章承接上文,記錄的是如何發(fā)布自己的模塊編寫模塊新建項(xiàng)目并初始化編寫模塊代碼發(fā)布模塊測試模塊命名空間每個(gè)人都可以發(fā)布自己的包,難免會(huì)有包名相同的情況,如果想要使 0x001 概述 本篇文章承接上文,記錄的是如何發(fā)布自己的Node.js模塊 0x002 編寫模塊 新建項(xiàng)目并初始化 $ mkdir 0x005-publish-own-module $ cd 0x005-publis...

    mrli2016 評論0 收藏0
  • 入手thinkjs,學(xué)習(xí)筆記

    摘要:最近剛剛學(xué)習(xí)了一個(gè)的開發(fā)框架,最重要的是可以用開發(fā)傳送門以下是學(xué)習(xí)過程中的筆記上面時(shí)全局安裝完成后用檢查是否成功創(chuàng)建了一個(gè)名為的項(xiàng)目,然后進(jìn)入目錄,安裝依賴,啟動(dòng)項(xiàng)目,瀏覽器打開就可以看到頁面了。 最近剛剛學(xué)習(xí)了thinkjs--一個(gè)node的MVC開發(fā)框架,最重要的是可以用es6/es7開發(fā)【傳送門】 以下是學(xué)習(xí)過程中的筆記: npm install thinkjs@2 -g --v...

    shuibo 評論0 收藏0

發(fā)表評論

0條評論

mzlogin

|高級講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<