2013-12-10 58 views
0

我得到的所有的模板,這個錯誤,我包括使用這樣的:與node.js的錯誤UNKNOWN痛飲鞏固

{% include '../public/templates/header.html' %} 

有誰知道什麼地方出錯了?

Error: UNKNOWN, unknown error '//../public/templates/header.html' 
at Object.fs.openSync (fs.js:427:18) 
at Object.fs.readFileSync (fs.js:284:15) 
at getSingle (C:\project\node_modules\swig\lib\swig.js:152:19) 
at get (C:\project\node_modules\swig\lib\swig.js:159:7) 
at Object.exports.compileFile (C:\project\node_modules\swig\lib\swig.js:177:7) 
at eval (eval at createRenderFunc (C:\project\node_modules\swig\lib\swig.js:44:10), :13:22) 
at Object.eval (eval at createRenderFunc (C:\project\node_modules\swig\lib\swig.js:44:10), :15:3) 
at Object.template.render (C:\project\node_modules\swig\lib\swig.js:111:21) 
at C:\project\node_modules\swig\lib\swig.js:189:17 
at Function.exports.swig.render (C:\project\node_modules\consolidate\lib\consolidate.js:245:14) 
+0

難道是它沒有找到該文件?什麼是swig.js在177行? –

+0

它昨天工作。而且我還沒有對路徑或文件的位置做任何更改。嘗試重新安裝swig並鞏固,沒有運氣。 – user2000316

+0

第177行在做什麼?另外,模板路徑中的前兩個'//'是奇怪的...... –

回答

0

它看起來像你使用Swig @ v0.14.0,這是嚴重過時的。整個引擎被重寫爲v1.0.0,從而帶來了使用相對路徑的能力。此功能以前不存在,因此您始終必須使用相對於您的root的絕對路徑。

如果繼續使用v0.14.0,假設你root == './public/templates'或類似:

{% include '/header.html' %} 

不過,我會強烈建議升級到最新版本,痛飲@〜1.2的兼容性和支持的目的。