0
Vue.jsを使った実験2私は少しプロジェクトを作り、コンポーネントをインポートしようとしましたが、ブラウザに空のページがあります。私はこの例を試すために使う "拡張" したい:Vue.js "extend"の正しい使い方は何ですか?
import Vue from 'vue'
import WorkZone from './components/WorkZone.vue'
import App from './App.vue'
var vm = new Vue({
el: '#app',
components: {
'work-zone': WorkZone,
'app': App
}
});
マイApp.vueファイル:
<template>
<div id="app">
<work-zone></work-zone>
</div>
</template>
<script>
import WorkZone from './components/WorkZone.vue';
export default {
name: 'app',
components: {
'work-zone': WorkZone
},
data() {
return {}
},
methods: {}
};
</script>
マイWorkZone https://jsfiddle.net/xmqgnbu3/1/
は、だから私のmain.jsは次のようになります.vueファイル:
var WorkZone = Vue.extend({
template: `
<div id="work-zone">
<div id="wrapper"></div>
</div>`,
data() {
return {
tabItems: [{
title: 'Главная страница',
project: 'Текст главная страница',
done: false,
}],
};
},
methods: {
createTab: function(newTab) {
this.tabItems.push(newTab);
}
}
});
考え方は後でボタン付きのサイドバーがあります。各ボタンは、ワークゾーンまたはページ上の他のコンポーネントに要素を追加します。私はこの機能(例えば "function addElem()")をどのコンポーネントでもアクセスできるようにしたいと思います。
は、 'app'は、idを持つ要素を存在しますか? – Bert
id = "app"のルートコンポーネントが表示されます。それは空です。今すぐ追加しようとしました Vue.component( 'work-zone'、WorkZone); '#app' テンプレート: するvar bizon =新しいヴュー({ ELにWorkZone.vueに 及び変更main.js ' ' 成分:{ アプリ 'ワークゾーン':WorkZone }、 }); WorkZoneが表示されましたが、コンポーネントのマウントに失敗しました:テンプレートまたはレンダリング関数が定義されていません。 –
rinatoptimus
ページのHTMLを表示できますか?次に、この場合は 'Vue.extend'は必要ありません。 WorkZone.vueファイルは、テンプレートセクションとスクリプトセクションを持つApp.vueファイルのように見えるはずです。 – Bert