javascript - webpack編譯出了反引號裡面的內容但是報錯,但是我直接寫字串就不報錯
PHP中文网
PHP中文网 2017-05-19 10:28:09
0
3
856
const path = './../views/'
export default new Router({
  routes: [
    {
      path: '/',
      name: 'index',
      component: resolve => require([`${path}index`], resolve)
    }
  ]  

上面這種寫法會報錯

Error: Cannot find module './../views/index'.
    at webpackContextResolve (eval at 126 (10.js:6), <anonymous>:10:9)
    at webpackContext (eval at 126 (10.js:6), <anonymous>:5:29)
    at eval (eval at <anonymous> (app.js:962), <anonymous>:16:132)

但是我換成component: resolve => require(['./../views/index'], resolve)就不報錯,但是事實上是一樣的,求高手解答為什麼?

PHP中文网
PHP中文网

认证高级PHP讲师

全部回覆(3)
我想大声告诉你

反引號裡是變數…單引號裡是靜態的 這是差別 這裡不支援寫動態的

为情所困

跟nodejs 有關。因為 nodejs 檔案匯入有兩種 路徑形式,一種是 就是 指向一個 js檔案 ,一種就是 指向一個 資料夾,當為資料夾的時候,會預設引用 資料夾裡的 index.js 檔案 。這裡 你 的路徑是個資料夾,由於你這裡面沒有 index.js 檔案所以會報錯。當然你也可以自訂 檔案。你可以在該資料夾裡面 新建一個 package.json 檔案 在裡面 寫個物件 { main:"寫你需要預設匯出的檔案名稱" };

小葫芦

題主問題解決了嗎

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板