一、安裝express庫和生成器
打開cmd輸入命令: yarn global add express express-generator
解釋: 上面里兩個模塊分別表示庫和生成器,在express3時,安裝express會自動的給你安裝生成器express-generator ,但是在express4時,他們就被分開了,所以需要分別安裝。
安裝好後可以通過命令:express –version 檢查是否安裝成功。
出現版本號即為安裝成功(如下圖所示)。

二、express生成器自動創建express項目
輸入命令:express nodejs(如下圖所示即為成功)

成功之後的目錄:

三、跳轉到package.json目錄下安裝相關的包
輸入命令: yarn 或者 cnpm i 或者 npm i
四、啟動項目
輸入命令:npm run start
打開瀏覽器,訪問127.0.0.1:3000就能獲取訪問我們的項目了
五、項目目錄解釋
bin:存放可執行文件
public:存放js、css、img等文件
router:存放路由文件
views:存放視圖文件或者說模版文件
app.js:啟動文件(入口文件)
package.json:存儲著工程的信息及模塊依賴,當在 dependencies 中添加依賴的模塊時,運行 npm install,npm 會檢查當前目錄下的 package.json,並自動安裝所有指定的模塊
node_modules:存放 package.json 中安裝的模塊,當你在 package.json 添加依賴的模塊並安裝後,存放在這個文件夾下
參考鏈接:
www.cnblogs.com/shimily/art…
六、在此項目中如何開發
首先在routes中新建一個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);

然後打開瀏覽器控制台用fetch請求我們剛才寫的介面
fetch('http:localhost:3000/test')
.then(res=>{
return res.text()
}).then(res=>{
console.log(res)
})
複製代碼我們發現出現了跨域問題,這是因為我們在nodejs中沒有添加跨域所導致的。

將下面的跨域的代碼添加到app.js中
//設置跨域訪問(設置在所有的請求前面即可)
app.all("*", function (req, res, next) {
//設置允許跨域的域名,*代表允許任意域名跨域
res.header("Access-Control-Allow-Origin", "*");
//允許的header類型
res.header("Access-Control-Allow-Headers", "content-type");
//跨域允許的請求方式
res.header("Access-Control-Allow-Methods", "DELETE,PUT,POST,GET,OPTIONS");
if (req.method == 'OPTIONS')
res.sendStatus(200); //讓options嘗試請求快速結束
else
next();
});
複製代碼然後重啟一下項目,這樣就可以正常訪問了

在項目中修改了內容就需要我們手動重啟項目,有點麻煩,我們再安裝一個插件即可解決這個煩惱。
七、使用nodemon自動重啟服務
- 安裝nodemon模塊
輸入命令:npm i nodemon -S
- 創建nodemon.json文件
在項目的根目錄下創建: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”

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/226045.html
微信掃一掃
支付寶掃一掃