node總結(jié)

1.一個應(yīng)用使用兩個模版引擎 ,需要注意的是,
i.express要求設(shè)置默認模版引擎,不然會報錯
ii.使用的時候要加上模版后綴

var express = require('express')
var engines = require('consolidate')
...
app.set('view engine', 'pug')
app.engine('pug', engines.pug);
app.engine('ejs', engines.ejs);
...
res.render('login1.ejs', { message: req.flash('loginMessage') })

2.npm list 查看所安裝的包以及相應(yīng)的版本號
3.對一些全局的模塊只有在特定的請求進行單獨加載 寫一個中間件 ,使用正則進行請求路徑匹配,在res中加上對應(yīng)的方法。

app.use('/youlun/:cityLetter', function(req, res, next){
         res.locals = {delimiter: '?'};
         next();
 })

4.看一個模塊例如express,先看package.json找main找主入口,沒有main字段就找index.js
5.有問題看不懂就去看源碼。
6.http://stackoverflow.com/questions/7591240/what-does-dot-slash-refer-to-in-terms-of-an-html-file-path-location

/ means the root of the current drive;
./ means the current directory;
../ means the parent of the current directory

7.碰到一個奇怪的問題,就是express明明設(shè)置了app.use(express.static('../../public'));,但是node modules/ares/app.js啟動后,訪問不到相應(yīng)的public文件。解決思路:

1.node_modules中找express模塊包,在其中找package.json,沒有main字段,找index.js
2.再找./lib/express,在其中找到了exports.static = require('serve-static')
3.在express模塊包中 找到相應(yīng)的node_modules文件夾下的 server-static模塊
4.找到module.exports = serveStatic

tmp24f4db09.png

因為只傳了一個路徑參數(shù),在這里找和 root參數(shù)相關(guān)的即可 ,找到了 opts.root = resolve(root)。path.resolve
6.看到這里問題就明朗了,因為此時express會把靜態(tài)路徑轉(zhuǎn)成相當(dāng)于 modules目錄下的../../public 而不是 app.js的。
總結(jié) 以后express傳路徑還是傳絕對路徑,多看源碼: )

7.package.json中~和^的區(qū)別

8.babel-command not found

9.新建多層目錄 一定要一層一層的建,同時注意權(quán)限問題,有權(quán)限的話加上sudo,

10.require() 當(dāng)前目錄引用當(dāng)前目錄或者當(dāng)前文件夾的文件

require('config/config.js')   //提示找不到模塊,
require('./config/config.js')  //正常 
//不用用html的引用思維去思考require的功能,html的引用是http請求 ,require是文件目錄請求
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,540評論 19 139
  • node中的模塊編寫稍大一點的程序時一般都會將代碼模塊化。在NodeJS中,一般將代碼合理拆分到不同的JS文件中,...
    糖心m閱讀 333評論 0 0
  • 鷓鴣天 . 長天 獨自尋秋眺遠方,長空萬里滿晴光。云浮碧海絲絲暖,風(fēng)卷藍天縷縷涼。 山疊疊,水茫茫,菊黃楓赤桂花香...
    不語不問閱讀 666評論 0 4
  • 0x00 Nessus Nessus號稱是世界上最流行的漏洞掃描程序,全世界有超過75000個組織在使用它。該工具...
    Hell0_C閱讀 40,015評論 4 16
  • 《同桌的你》也許,在那段青澀的歲月,你會遇見這么個女孩。跟她做過很久的同桌,她不會太文靜,甚至還有點小頑皮,一寸又...
    ITCooler閱讀 349評論 0 3

友情鏈接更多精彩內(nèi)容