從網絡上查找來看,在調試NODE.JS+EXPRESS程式時,對于新手而言,難免會出現如題所示的錯誤。
對于我,具體情況是:在本地運作OK(我使用了LEANCLOUD);但是,等部署到LEANCLOUD雲端再運作系統時卻出現錯誤,如下:
Error: Failed to lookup view "......" in views directory "..."
初步看起來是系統在指定視圖路由位置找不到視圖部分,感覺很是奇怪!本地運作正常呀!
通過×××頭(其實不翻也可以)搜尋找到如下參考答案:
位址是:http://stackoverflow.com/questions/32311710/why-is-this-error-coming-up-failed-to-lookup-view-index-in-views-directory
答案提示描述如下:
The problem was that I had changed some filenames (capitalising the first letter), and then changed it back, but it never logged it. Typing into the shell creates a one-off dyno and displays the file-system as heroku sees it. This is the thread that solved my problem: Heroku Cannot find module |
注意到:文中也提到“It runs fine locally.”,隻是部署後運作出問題:也就是說,情形基本與我一樣!
因為本人相關經驗不足,于是也試了一把。仔細檢查源碼,表達中也是随意地使用了字母大小寫。于是,嚴格地進行修改。再部署,運作:OK!
細節是,我的路由函數中使用了如下一句:
.(.(__dirname, ,,));
這是一個小小的例子,是想把WEX5與LEANCLOUD結合一起使用的,表達上有些随意。修改為如下嚴格的大小寫表達方式:
.(.(__dirname, ,,));
成功了!
本文描述整體是簡略了一些,但是相信有相關問題的朋友還算清楚:在EXPRESS.JS程式設計時路由表達時務必注意大小寫!否則,在本地運作OK,但是部署時可能出現如題相似的失敗!