node.js利用express自動(dòng)搭建項(xiàng)目的全過(guò)程
一、安裝express庫(kù)和生成器
打開cmd輸入命令: yarn global add express express-generator
解釋:
上面里兩個(gè)模塊分別表示庫(kù)和生成器,在express3時(shí),安裝express會(huì)自動(dòng)的給你安裝生成器express-generator ,但是在express4時(shí),他們就被分開了,所以需要分別安裝。
安裝好后可以通過(guò)命令:express --version 檢查是否安裝成功。
出現(xiàn)版本號(hào)即為安裝成功(如下圖所示)。
二、express生成器自動(dòng)創(chuàng)建express項(xiàng)目
輸入命令:express nodejs(如下圖所示即為成功)
成功之后的目錄:
三、跳轉(zhuǎn)到package.json目錄下安裝相關(guān)的包
輸入命令: yarn 或者 cnpm i 或者 npm i
四、啟動(dòng)項(xiàng)目
輸入命令:npm run start
打開瀏覽器,訪問(wèn)127.0.0.1:3000就能獲取訪問(wèn)我們的項(xiàng)目了
五、項(xiàng)目目錄解釋
bin:存放可執(zhí)行文件
public:存放js、css、img等文件
router:存放路由文件
views:存放視圖文件或者說(shuō)模版文件
app.js:?jiǎn)?dòng)文件(入口文件)
package.json:存儲(chǔ)著工程的信息及模塊依賴,當(dāng)在 dependencies 中添加依賴的模塊時(shí),運(yùn)行 npm install,npm 會(huì)檢查當(dāng)前目錄下的 package.json,并自動(dòng)安裝所有指定的模塊
node_modules:存放 package.json 中安裝的模塊,當(dāng)你在 package.json 添加依賴的模塊并安裝后,存放在這個(gè)文件夾下
參考鏈接:http://chabaoo.cn/article/209247.htm
六、在此項(xiàng)目中如何開發(fā)
首先在routes中新建一個(gè)test.js文件
var express = require('express'); var router = express.Router(); router.get('/', function (req, res, next) { res.send('我是接口返回值'); }); module.exports = router;
然后在app.js中加入下面代碼
var testRouter = require('./routes/test'); app.use('/test', testRouter);
然后打開瀏覽器控制臺(tái)用fetch請(qǐng)求我們剛才寫的接口
fetch('http:localhost:3000/test') .then(res=>{ return res.text() }).then(res=>{ console.log(res) })
我們發(fā)現(xiàn)出現(xiàn)了跨域問(wèn)題,這是因?yàn)槲覀冊(cè)趎odejs中沒(méi)有添加跨域所導(dǎo)致的。
將下面的跨域的代碼添加到app.js中
//設(shè)置跨域訪問(wèn)(設(shè)置在所有的請(qǐng)求前面即可) app.all("*", function (req, res, next) { //設(shè)置允許跨域的域名,*代表允許任意域名跨域 res.header("Access-Control-Allow-Origin", "*"); //允許的header類型 res.header("Access-Control-Allow-Headers", "content-type"); //跨域允許的請(qǐng)求方式 res.header("Access-Control-Allow-Methods", "DELETE,PUT,POST,GET,OPTIONS"); if (req.method == 'OPTIONS') res.sendStatus(200); //讓options嘗試請(qǐng)求快速結(jié)束 else next(); });
然后重啟一下項(xiàng)目,這樣就可以正常訪問(wèn)了
在項(xiàng)目中修改了內(nèi)容就需要我們手動(dòng)重啟項(xiàng)目,有點(diǎn)麻煩,我們?cè)侔惭b一個(gè)插件即可解決這個(gè)煩惱。
七、使用nodemon自動(dòng)重啟服務(wù)
安裝nodemon模塊
輸入命令:npm i nodemon -S
創(chuàng)建nodemon.json文件
在項(xiàng)目的根目錄下創(chuàng)建:nodemon.json文件
{ "restartable": "rs", "ignore": [".git", ".svn", "node_modules/**/node_modules"], "verbose": true, "execMap": { "js": "node --harmony" }, "watch": [], "env": { "NODE_ENV": "development" }, "ext": "js json njk css js " }
使用nodemon模塊
在你的package.json文件中,添加一行腳本代碼
"dev": "nodemon ./bin/www"
代碼已經(jīng)放到我的github倉(cāng)庫(kù),附上鏈接:github.com/wuguanfei/n…
總結(jié)
到此這篇關(guān)于node.js利用express自動(dòng)搭建項(xiàng)目的文章就介紹到這了,更多相關(guān)node.js express自動(dòng)搭建項(xiàng)目?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Node.js中path.join()優(yōu)勢(shì)例舉分析
在本篇文章里小編給大家整理的是一篇關(guān)于Node.js中path.join()優(yōu)勢(shì)例舉分析,有興趣的朋友們可以學(xué)習(xí)下。2021-08-08npm?does?not?support?Node.js問(wèn)題的解決辦法
這篇文章主要給大家介紹了關(guān)于npm?does?not?support?Node.js問(wèn)題的解決辦法,文中通過(guò)代碼以及圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-10-10如何正確使用Nodejs 的 c++ module 鏈接到 OpenSSL
這篇文章主要介紹了如何正確使用Nodejs 的 c++ module 鏈接到 OpenSSL,需要的朋友可以參考下2014-08-08nodejs微信開發(fā)之自動(dòng)回復(fù)的實(shí)現(xiàn)
這篇文章主要介紹了nodejs微信開發(fā)之自動(dòng)回復(fù)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03Nodejs 和Session 原理及實(shí)戰(zhàn)技巧小結(jié)
這篇文章主要介紹了Nodejs 和Session 原理及實(shí)戰(zhàn)技巧小結(jié),需要的朋友可以參考下2017-08-08node.js文件系統(tǒng)模塊和兩個(gè)重要模塊
這篇文章主要介紹了node.js文件系統(tǒng)模塊和兩個(gè)重要模塊,nodejs是JavaScript的后端運(yùn)行環(huán)境,并對(duì)node.js的fs文件系統(tǒng)模塊做了簡(jiǎn)單的介紹,需要的小伙伴可以參考一下2022-06-06NodeJS學(xué)習(xí)筆記之Connect中間件應(yīng)用實(shí)例
前面我們介紹了幾篇內(nèi)容的connect中間件的基礎(chǔ)知識(shí),今天我們來(lái)實(shí)例應(yīng)用一下,做個(gè)記事本的小應(yīng)用,希望大家能夠喜歡。2015-01-01使用nvm進(jìn)行多個(gè)nodejs版本的統(tǒng)一管理
隨著前端項(xiàng)目的越來(lái)越多,不同項(xiàng)目使用的nodejs版本可能不一樣,導(dǎo)致在切換不同項(xiàng)目時(shí)需要更換不同的nodejs版本,非常麻煩,本次推薦使用nvm進(jìn)行多個(gè)nodejs版本的統(tǒng)一管理,文中有詳細(xì)的圖文介紹,需要的朋友可以參考下2023-12-12