У меня есть список с именем this.userList
, который я использую для заполнения таблицы в этом представлении.Моя проблема заключается в том, что при первой загрузке этот список пустовал в Index.vue.
В файле actions.js данные, которые я запрашиваю для службы, в порядке, и когда я их фиксирую, список работает нормально.Но когда я вызываю ...mapState('selectedLocation',['selectedLocation']),
on computed, пусто для просмотра.Я действительно понятия не имею, что мне здесь не хватает.Вот некоторый код:
Index.vue
<m-table :listItems="formatedList"
:delButton="true"
:editButton="true"
:detailsButton="false"
:detailsButtonMessage="$t('views.users.edit')"
:fields="fields"
@delete="deleteRow"
@edit="editRow"/>
computed: {
...mapState('users',['userList','userFormState']),
formatedList() {
if(this.userList.data) {
this.userList.data.items.forEach((user, index) => {
let profileId = user.Profiles[0].Profile - 1
user['profileName'] = this.$t(`profiles[${profileId}].text`)
})
return !this.profilesSelect.length ? this.userList.data.items : this.userList.data.items.filter(
({profileName}) => this.profilesSelect.find(profile => profile.Name === profileName))
}
},
}
methods: {
fetchData(){
this.$store.dispatch('users/read');
},
}
mounted(){
this.$store.dispatch('genericTable/clearGenericTable');
this.fetchData();
this.fecthFilters();
}
actions.js
async read({ dispatch , rootState }, idLocation = '',updatedParams = false){
const { qCurrentPage , selected } = rootState.genericTable
let params = updatedParams ? updatedParams : {
qCurrentPage,
qPageSize: selected,
includeDeleted: false,
qStatus: true,
}
params['locationId'] = rootState.selectedLocation.selectedLocation.PublicId
params['qProfiles'] = [0,1,2,3,6,8]
let { data } = await User_GetUsersByLicenseeAndProfile(params)
const formatedUser = []
dispatch('setUserList', data)
},
setUserList({ commit },data){
commit(mutations.FETCH_USERS, data)
},
mutations.js
[mutations.FETCH_USERS]: (state, payload) => state.userList = payload,
state.js
export default{
userList: [],
userFormState: {
Name: '',
Email: '',
Gender: 0,
Matriculation: '',
UserName: '',
Telephone: '',
Status: true,
Level: 1,
HasRegistered: false,
LoginProvider: 'api',
Password: '',
},
}
В файле actions.js, например, если я использую console.log(data)
, у меня есть список.Проблема в том, когда я получаю список из поля зрения.