私はすでに同じようなタイトルで質問を読んでいますが、その複雑さのために私はそれらに従うことができません。私のコードでは、私にとって解決策が見つけやすくなると思います。私は関連するコードだけを含める。
私の店はこれです: obs:vuexプラグインをインストールしました。
import Vue from 'vue';
import Vuex from 'vuex';
Vue.use(Vuex)
const state = {
titulo: "please, change title"
}
const mutations = {
changeTitle(state, title) {
state.title= title
}
}
export default new Vuex.Store({
state : state,
mutations : mutations
})
マイApp.vue
<template>
<div>
<show-title-component ></show-title-component>
<change-title-component></change-title-component>
</div>
</template>
<script>
import ShowTitleComponent from './components/ShowtitleComponent';
import ChangeTitleComponent from './components/ChangeTitleComponent';
import store from './vuex/store';
export default {
components: {ShowTitleComponent, ChangeTitleComponent},
store,
data: function() {
return {title: 'placeholder'}
}
}
</script>
エラーを生成するコンポーネント:
<template><div>{{ title}}</div></template>
<script>
export default {
name: "show-title-component",
computed: {
title() {
return this.$store.state.title /** error here */
}
}
}
</script>
が含まれている必要があります。それを 'main.js'に含める必要があります。 – Traxo
' new Vue'を呼び出すエントリーファイルに含めます。 –
私は知識を修正したかどうかを確認するために本の運動をやり直していました。私は私のものを著者と比較して、コードの不一致を見つけることができませんでした。私が間違っていたのは、ストアファイルに.vueファイルという名前を付けることだけでした。私が.js(store.js)に変更した後、それはうまくいった! –