vue2.x使用vuex的时候,什么时候对state数据进行请求(或者说初始化)呢?

请问向后台请求数据大家一般是在入口处,还是相应的component,感觉如果是在入口处请求,一次的请求量会比较大,但是如果是在component请求感觉有点重复请求的意思。

阅读 3.1k
1 个回答

请求数据一般是在特定的情况下。
例如,当首次进入需要加载数据列表,那么就应该在created或者mounted里面调用。

import { mapActions } from ’vuex‘
export default {
    methods: mapActions([’loadList‘]),
    mounted() {
        this.loadList() // 加载列表数据
    }
}

但是,当查询的时候,或者过滤列表的时候,又需要在按钮或者组件触发的事件里面去调用

<template>
    <div>
        <s-button @click='loadList'>搜索</s-button>
        <ul>
            <li v-for="item in list">{{ item.title }}</li>
        </li>
    </div>
</template>

import { mapActions } from ’vuex‘
import sButton from 'search-btn.vue'

export default {
    methods:{
        ...mapActions([’loadList‘]),
        search(keyword){ // 查询过滤列表数据
            this.loadList({keyword: keyword})
        }
    },
    mounted() {
        this.loadList() // 首次载入列表数据
    },
    components:{ sButton }
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题