- 編譯打包
$ npm run build
會對應生成
dist
目錄(如何生成的對應文件,是webpack中做了相關配置)
如果是在生產環境下,即需要將config/index.js
中的對應的build
,將productionSourceMap: true
設置為false
【對應的map文件即不會生成】
- node調試
- 編寫prod.server.js
// prod.server.js
var express = require('express')
var PORT = 9393;
var IP = '0.0.0.0';
var app = express()
// 文件讀取
var appData = require('./data.json');
var seller = appData.seller; // 商家
var goods = appData.goods; // 商品
var ratings = appData.ratings; // 評論
// 路由器
var routes = express.Router();
// 路由: 根目錄下時
routes.get('/', (req, res, next) => {
// 指向位置
req.url = '/index.html';
// 執行以下
next();
});
// 網站首頁接受 GET 請求
routes.get('/seller', (req, res) => {
// 相應客戶端
res.json({
data: seller,
errno: 0 // 表示沒有錯誤
});
});
routes.get('/goods', (req, res) => {
// 相應客戶端
res.json({
data: goods,
errno: 0 // 表示沒有錯誤
});
});
routes.get('/ratings', (req, res) => {
// 相應客戶端
res.json({
data: ratings,
errno: 0 // 表示沒有錯誤
});
});
// 中間件
app.use('/api', routes);
// 指定static目錄
app.use(express.static('./'));
var server = app.listen(PORT, IP, (err) => {
if(err) {
console.log(err)
} else {
console.log(`服務開啟成功【端口號:${PORT}】`)
}
});
目錄結構
發布時,只需要將
dist
上傳到服務器,并把對應的prod.server.js
腳本上傳到服務器,之后通過node
啟動服務器即可;