1

我当然在没有 state.groupCrud.group 的情况下尝试过,但还是不行。我的语法是否正确。我正在使用 vuejs3,我将提供该对象的一些屏幕截图。

这是状态对象:

const state = () => ({
  group: {}, //This is the one i am trying to access.
  groups: [],
  loading: false,
  error: null,
  success: false,
});

我从 api 获取数据是这样的:

  async getGroup({ commit }, id) {
    try {
      await commit('axiosSingleDataBegin');
      const query = await DataService.get(`/groups/unique/${id}`);
      await commit('axiosSingleDataSuccess', query.data.data.group);
    } catch (err) {
      await commit('axiosSingleDataErr', err);
    }
  },

我将它设置为这样的状态:

axiosSingleDataSuccess(state, data) {
    state.loading = false;
    state.group = data;
  },

这就是我使用状态的方式

 setup() {
    const { state, dispatch } = useStore();
    const group = state.groupCrud.group;
    const { params } = useRoute();

    onMounted(() => {
      dispatch('getGroup', params.id);
      console.log(group); //doesnt work
    });

    // ...
  },

这是console.log(state.groupCrud);对象

这是console.log(state.groupCrud.group)对象

当我尝试使用 state.groupCrud.group 时,我得到一个空的代理对象,尽管该对象不是空的

4

0 回答 0