第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

請(qǐng)問(wèn)node.js該怎么安裝node modules?

請(qǐng)問(wèn)node.js該怎么安裝node modules?

C
ABOUTYOU 2019-09-14 11:11:42
node.js怎么安裝node modules
查看完整描述

6 回答

?
慕標(biāo)5832272

TA貢獻(xiàn)1966條經(jīng)驗(yàn) 獲得超4個(gè)贊

命令npm install可以安裝package.json的依賴(lài)
npm install --save 可以安裝新的依賴(lài)

查看完整回答
反對(duì) 回復(fù) 2019-09-19
?
慕少森

TA貢獻(xiàn)2019條經(jīng)驗(yàn) 獲得超9個(gè)贊

Nodejs


1.安裝nodejs

從nodejs官網(wǎng)下載最新版本的node,設(shè)置環(huán)境變量這樣就可以在cmd下直接用命令行操作npm

環(huán)境變量:path  d:/nodejs

查看本機(jī)node及npm版本


2.從官網(wǎng)上直接拷一個(gè)小腳本:

nodeExample.js

可以通過(guò)控制臺(tái)直接運(yùn)行

打開(kāi)瀏覽器輸入http://127.0.0.1:3000/,頁(yè)面上出現(xiàn)Hello World

如果將Hello World改成Hello NodeJs,刷新瀏覽器發(fā)現(xiàn)頁(yè)面還是沒(méi)變,此時(shí)要再次在控制臺(tái)再次運(yùn)行該js文件,Ctrl+C結(jié)束上次活動(dòng)

3.關(guān)于node的npm

nodejs的npm就像java里的maven,是跟著nodejs一起安裝的包管理工具,沒(méi)有它就相當(dāng)于一切都沒(méi)有

npm的官方鏡像網(wǎng)站是  https://www.npmjs.com/

node包管理器是一個(gè)命令行實(shí)用程序,它可以讓你查找、安裝、刪除、發(fā)布以及做與node封裝模塊相關(guān)的很多事情

注:npm install命令沒(méi)有指定任何模塊,這是因?yàn)閚pm在默認(rèn)情況下會(huì)查找一個(gè)package.json文件,當(dāng)你需要額外的模塊式,將那些模塊添加進(jìn)依賴(lài)指令中,然后再次運(yùn)行npm install。依賴(lài)指令在package.json文件的dependencies里。

4.關(guān)于package.json

當(dāng)我們通過(guò)npm install下載相應(yīng)的插件時(shí),項(xiàng)目中就會(huì)自動(dòng)出現(xiàn)node_modules文件夾,如npm install gulp,我們就可以看到node_modules文件下的gulp文件夾的目錄結(jié)構(gòu)

注意以下這里的package.json,它是一個(gè)nodejs和npm都會(huì)自動(dòng)讀取的配置文件,它里面是個(gè)標(biāo)準(zhǔn)的JSON格式字符串。

如果我們?cè)谕獠縥s文件中直接require('slib'),nodejs會(huì)自動(dòng):

1)看它內(nèi)置模塊中是否有,如果有就優(yōu)先加載內(nèi)置模塊

2)如果沒(méi)有就看是否是“路徑級(jí)”的引用

3)以上都不是就會(huì)在node_modules尋找同名文件夾。首先會(huì)默認(rèn)尋找index.js,如果沒(méi)有則會(huì)查看是否在package.json中做了main定義

內(nèi)置模塊如require('http'),路徑級(jí)如require('./xxx.js'),注意這里的./代表的是當(dāng)前js文件所在的目錄,.js可寫(xiě)可不寫(xiě),在下載gulp時(shí)由于包跟包之間有引用,因此會(huì)下載其他一些插件。

我們也可以在node_modules里自定義插件,如在node_modules里新建一個(gè)文件夾,里面的js文件一定要定義成index.js,這樣當(dāng)我們引用這個(gè)js文件時(shí),node會(huì)自動(dòng)加載這個(gè)文件下的index.js

5.自定義插件

如果我們想在node_modules下自定義一個(gè)插件,被外部文件引用,而不通過(guò)index.js自動(dòng)加載的方式,那么該怎么定義呢

1)在node_modules下新建一個(gè)文件,examplejs,包括aaa.js和package.json

packeage.json只有一行:

{"main":"aaa.js"}

這里的main是指入口,注意:如果這里的aaa.js被命名為index.js,那么我們就不需要package.json了,node會(huì)自動(dòng)加載每個(gè)插件下的index.js文件

2)在項(xiàng)目中新建一個(gè)showName.js文件,引用上面的examplejs

var getlib=require('examplejs');getlib.showName();

3)執(zhí)行程序:

將它加入到html中

1)新建index.html,將js引進(jìn)來(lái)

2)啟動(dòng)瀏覽器,報(bào)錯(cuò)

瀏覽器不識(shí)別require,也就是說(shuō)目前網(wǎng)頁(yè)還不支持require這種寫(xiě)法

既然要通過(guò)require('examplejs')的方式獲取getlib,那么打印一下getlib,在showName.js里添加一行:console.log(getlib);查看結(jié)果:

得到的getlib就是一個(gè)對(duì)象

修改showName.js

var getlib=require('examplejs');for(var a in getlib){console.log(a+":"+getlib[a]);}

執(zhí)行結(jié)果:

showName.js已經(jīng)將getlib里的變量和函數(shù)都抽離出來(lái)了,這時(shí)候index.html就可以引用該js了

 




查看完整回答
反對(duì) 回復(fù) 2019-09-19
?
撒科打諢

TA貢獻(xiàn)1934條經(jīng)驗(yàn) 獲得超2個(gè)贊

安裝requirejs

requirejs官方提供了一個(gè)可用于node的適配器 r.js
。有兩種方法可以在項(xiàng)目里面加入此庫(kù)。

1. npm

在具體項(xiàng)目目錄下使用如下命令來(lái)引入requirejs:
npm install requirejs

windows環(huán)境下安裝需要注意不要加上 -g
全局開(kāi)關(guān),否則不能正常安裝。

安裝完成后,可使用 require('requirejs')
來(lái)加載requirejs。

2. 下載r.js

如果不想使用npm,也可以直接下載r.js,并把它放到項(xiàng)目中達(dá)到同樣的目的。

點(diǎn)擊下載。

在項(xiàng)目中通過(guò) require('/path/to/r.js')
來(lái)加載requirejs。

配置

配置requirejs
var requirejs=require('requirejs');

requirejs.config({
//把node自身的require方法傳遞給requirejs
nodeRequire: require
});

requirejs(["foo","bar"],function(foo,bar){});

在需要使用requirejs的地方可以用上面的代碼來(lái)配置requirejs。首先加載requirejs模塊,命名為 requirejs
(可以為其他命名)。然后對(duì) requirejs
進(jìn)行配置。配置的方法和參數(shù)可以參照瀏覽器版本的requirejs的 配置說(shuō)明
。不過(guò)有一點(diǎn)不同,如代碼所示,我們需要把node的 require
方法引進(jìn)來(lái)。最后一行是簡(jiǎn)單地加載模塊的示例,requirejs會(huì)嘗試把 foo
和 bar
兩個(gè)模塊當(dāng)成AMD模塊來(lái)加載,如果失敗,則會(huì)調(diào)用node的 requie
方法來(lái)把它們當(dāng)作commonjs模塊加載。為了實(shí)現(xiàn)這樣的適應(yīng)性,所以我們需要配置node的 require
方法。但實(shí)際測(cè)試并不盡如人意,保險(xiǎn)起見(jiàn),還是對(duì)AMD模塊使用 requirejs
加載,對(duì)commonjs模塊使用 require
加載。

構(gòu)造AMD格式的node模塊

在node中定義的模塊是commonjs模塊,如果想要構(gòu)造AMD模塊,我們需要 amdefine
這個(gè)包。

安裝amdefine

同樣,可以使用npm進(jìn)行安裝,在項(xiàng)目目錄下執(zhí)行:

npm install amdefine

在windows下也存在無(wú)法全局安裝的問(wèn)題,需要對(duì)項(xiàng)目單獨(dú)安裝。

定義define方法

if(typeof define !== 'function'){
var define=require('amdefine')(module);
}

amdefine提供了包裝AMD模塊的 define
方法。不過(guò)上面代碼中對(duì)于node中是否包含define方法的檢測(cè)判斷請(qǐng)保留,最好原封不動(dòng)地將這幾行拷貝到自己的項(xiàng)目中。這樣,我們就可以像使用前端requirejs一樣,定義和使用AMD模塊。

將node自己的common模塊轉(zhuǎn)換為AMD模塊

原本想通過(guò)引用`amdefine`包來(lái)實(shí)現(xiàn)node端AMD模塊的定義,不過(guò)requirejs本身定義了`define`方法,不必額外引入其他包。




查看完整回答
反對(duì) 回復(fù) 2019-09-19
  • 6 回答
  • 0 關(guān)注
  • 617 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)