【发布时间】:2022-11-13 18:16:45
【问题描述】:
我想换一个Vuex 状态使用文档中的计算函数,但它没有改变,控制台给出了这个错误。
[Vue 警告]:写入操作失败:计算属性“renameActive”是只读的。
我正在使用 Tauri.js 中的 Vue CLI。
添加新的 Tab Vue 组件:
<template> <div class="TabContainer flex_c_h flex_start gap1"> <div class="tab grid_c">All</div> <Icons :customClass="'addTab'" :icon="'plus'" @triggered="AddTab" /> <RenameField v-if="renameActive" /> </div> </template> <script> import Icons from '@/components/Assets/Icons.vue' import RenameField from '@/components/Popups/RenameField.vue' export default { components: { Icons, RenameField }, computed: { renameActive() { return this.$store.state.renameActive } }, methods: { AddTab() { this.renameActive = true } } } </script> <style lang=""> </style>src/store/index.js
import { createStore } from 'vuex' export default createStore({ state: { navbar: [ "upload", "folder", "reset", "settings", "about" ], currentTab: "All", renameActive: false, }, getters: { }, mutations: { }, actions: { }, modules: { } })src/main.js
import { createApp } from 'vue' import App from './App.vue' import router from './router' import store from './store' createApp(App).use(store).use(router).mount('#app')我怎样才能使它可写?
【问题讨论】:
-
正确的
computed: { renameActive()是只读的——这与商店没有任何关系——也许你的意思是this.$store.state.renameActive = true?
标签: javascript vue.js vuejs3 vuex tauri