vue.js - vuex 完成后加载时设置 false

标签 vue.js vuex vuetify.js

在加载中放置错误的正确方法是什么(在调度之后)?

喜欢:(我知道这不起作用)

this.loading = true;
this.$store.dispatch('items', data);
this.loading = false;

<script>
    export default {

        data() {
            return {
                loading: false,
            }
        },


        methods: {

            store() {

                this.loading = true;
                this.$store.dispatch('items', data);

            },
        },
    }
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>

最佳答案

有几种方法可以做到这一点。

选项 1:

行动会返回 promise ,因此请充分利用它。

this.loading = true;
this.$store.dispatch('items', data)
.then(() => {
   this.loading = false;
})

我更喜欢这种处理方式,因为 loading 是在您使用它的地方精确定义和更新的。

选项 2:

如果您需要在多个组件之间共享加载状态,这很有用。

loading放入商店的状态中,并在items操作中的适当时间更新它。然后,您可以在组件中将 loading 用作 $store.state.loading (或作为计算属性)。

关于vue.js - vuex 完成后加载时设置 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60064738/

相关文章:

javascript - 如何在 Element UI 的数据表中使用分页?

javascript - 限制输入 Vuejs 的小数位数

javascript - 未捕获的类型错误 : Cannot read property '$store' of null

javascript - Vuex store this.$store 在 Vue.js 组件中未定义

javascript - 当 nav-drawer 和 app-bar 是不同的组件时,在 Vuetify 中绑定(bind)抽屉状态

javascript - 如何使用插槽在 Vuetify 数据表中设置分组行的样式?

javascript - 是否可以让 html-webpack-plugin 从 css 生成 &lt;style&gt; 元素?

javascript - 删除数组元素失败

javascript - 你能将组件 Prop 传递给 mapGetters vuex 吗

vuetify.js - 努克斯特 | Vuetify 主题 - 如何更改颜色?