2017-08-04 13 views
0

vue.jsの例のルータアプリケーション(https://github.com/chrisvfritz/vue-2.0-simple-routing-example)と同様のものをビルドすることはできません。Vue.JSがテンプレートを動的に読み込めません

私はそれを機能させるために、すべてのファンシーなものを削除しました。しかし、私はまだ、ページの読み込みに悪名高いエラーメッセージがあります

[Vue warn]: Failed to mount component: template or render function not defined. 

found in 

---> <Anonymous> 
     <Root> 

私は動的にページをロードしようとしている、空想何もしなかった:

// file: app/index.js 
import Vue from 'vue'; 

const app = new Vue({ 
    el: "#app", 
    data: { 
    }, 
    computed: { 
    ViewComponent() { 
     const matchingView = 'Home'; 

     return require('./pages/' + matchingView + '.vue'); 
    }, 
    }, 
    render(h) { 
    return h(this.ViewComponent); 
    }, 
}); 

とページが唯一の静的なテンプレートです:

:私は理解していない何
// file app/pages/Home.vue 
<template> 
    <p>Home Page</p> 
</template> 

<script> 
    export default { 
    }; 
</script> 

は、私は静的に自分のページをインポートする場合、私は私のページを動作させることができるということです

webpackビルドを正しく設定していないと思われますが、ここで何が起こっているのかわかりません...ドキュメントに記載されているようにvue-loaderとvue-template-compilerをインストールしましたが、何も変わらなかった。ここで

は私の依存関係です:

"devDependencies": { 
    "babel-core": "^6.25.0", 
    "babel-loader": "^7.1.1", 
    "babel-preset-es2015": "^6.24.1", 
    "vue-loader": "^13.0.3", 
    "vue-template-compiler": "^2.4.2", 
    "webpack": "^3.4.1", 
    "webpack-dev-server": "^2.6.1" 
    }, 
    "dependencies": { 
    "vue": "^2.4.2" 
    } 

そしてwebpack.config.jsonファイル

var path = require('path'); 


module.exports = { 
    entry: './app/index.js', 
    output: { 
    path: path.resolve(__dirname, './dist'), 
    publicPath: '/dist/', 
    filename: 'app.js', 
    }, 
    module: { 
    rules: [ 
     { 
     test: /\.vue$/, 
     use: { 
      loader: 'vue-loader', 
     }, 
     }, 
     { 
     test: /\.test$/, 
     exclude: '/node_modules/', 
     use: { 
      loader: 'babel-loader', 
     }, 
     }, 
    ], 
    }, 
    resolve: { 
    alias: { 
     'vue$': 'vue/dist/vue.esm.js', 
    } 
    }, 
    devServer: { 
    historyApiFallback: true, 
    noInfo: true, 
    }, 
}; 
+0

webpackbinで何のエラーもなく... https://www.webpackbin.com/bins/-KqhO-poNk7irR0szpHc – choasia

+0

ええ、私はそれを見ました。私はwebpack.config.jsをどこかに混乱させたようです。しかし、Vue.jsルーティングの例で使用されているものと非常に似ています。そして、これはうまく動作します。 – Egg

答えて

関連する問題