我是vuex的初学者。我正在尝试通过计算方法属性从我的一个名为expenceHeadDetail.js的商店模块中检索一个名为expenceHeadData[]
的数组,但是它向我展示了另一个名为expenceDetail.js的模块名为expenceData[]
的数组。
我添加了与我的问题有关的三个文件的代码。
谢谢
expenceHeadDetail.js
import ApiService from '../services/ApiService';
export default {
strict: true,
state:{
selectedIndex: -1,
expenceHeadData:[],
endPoint:'expence_head'
},
mutations:{
updateSelectIndex:(state,sindex)=>{
state.selectedIndex=sindex;
},
loadHeads(state, value) {
state.expenceHeadData = value;
},
updateExpenceHeadData:(state,{index,value})=>{
state.expenceHeadData.splice(index,1,value);
},
addExpenceHeadData:(state,value)=>{
state.expenceHeadData.push(value);
},
deleteExpenceHeadData:(state,value)=>{
state.expenceHeadData.splice(value,1);
}
},
actions:{
updateSelectIndex:({state,commit},sindex)=>{
commit('updateSelectIndex',sindex);
},
updateExpenceHeadLoad({state,commit}) {
ApiService.getAll(state.endPoint)
.then(res => {
commit('loadHeads', res.data);
});
},
updateExpenceHeadData:({state,commit},{index,value})=>{
//commit('updateExpenceHeadData',{index,value});
console.log(index)
ApiService.update(state.endPoint, value)
.then(res => {
commit('updateExpenceHeadData',{index,value:res.data});
})
.catch(error=>{
console.log("Update Bank Failed");
});
},
addExpenceHeadData:({state,commit},value)=>{
console.log(value);
//commit('addExpenceHeadData',value);
ApiService.save(state.endPoint, value)
.then(res => {
commit('addExpenceHeadData',res.data);
})
.catch(error => {
console.log("Add Bank Failed");
});
},
deleteExpenceHeadData:({state,commit},value)=>{
//commit('deleteExpenceHeadData',value);
ApiService.delete(state.endPoint, state.expenceHeadData[value].id)
.then(res => {
commit('deleteExpenceHeadData',value);
});
}
}
}
component.vue //我在其上调用数组
computed:{
stockData(){
return this.$store.state.stockDetail.stockData
},
expenceHeadData(){
return this.$store.state.expenceHeadDetail.expenceHeadData
},
}
methods:{
getHeadId()
{
console.log("outside of loop",this.expenceHeadData)
//console.log("lo g");
for(var i=0;i<=this.expenceHeadData.length;i++)
{
if(this.expenceHeadData[i].name==this.item.name)
{
console.log(this.expenceHeadData[i].name)
break;
}
//console.log(this.expenceHeadData.name)
}
}
}
expenceDetail.js
import ApiService from '../services/ApiService';
export default {
state:{
selectedIndex: -1,
expenceData:[],
endPoint:'expence'
},
mutations:{
updateSelectIndex:(state,sindex)=>{
state.selectedIndex=sindex;
},
loadHeads(state, value) {
state.expenceData = value;
},
updateExpenceData:(state,{index,value})=>{
state.expenceData.splice(index,1,value);
},
addExpenceData:(state,value)=>{
state.expenceData.push(value);
},
deleteExpenceData:(state,value)=>{
state.expenceData.splice(value,1);
}
},
actions:{
updateSelectIndex:({state,commit},sindex)=>{
commit('updateSelectIndex',sindex);
},
updateExpenceLoad({state,commit}) {
ApiService.getAll(state.endPoint)
.then(res => {
commit('loadHeads', res.data);
});
},
updateExpenceData:({state,commit},{index,value})=>{
//commit('updateExpenceHeadData',{index,value});
//console.log(index)
ApiService.update(state.endPoint, value)
.then(res => {
commit('updateExpenceData',{index,value:res.data});
})
.catch(error=>{
console.log("Update Bank Failed");
});
},
addExpenceData:({state,commit},value)=>{
console.log("ye wali",value);
//commit('addExpenceHeadData',value);
ApiService.save(state.endPoint, value)
.then(res => {
commit('addExpenceData',res.data);
})
.catch(error => {
console.log("Add Bank Failed");
});
},
deleteExpenceData:({state,commit},value)=>{
//commit('deleteExpenceHeadData',value);
ApiService.delete(state.endPoint, state.expenceData[value].id)
.then(res => {
commit('deleteExpenceData',value);
});
}
}
}
我希望此数组expenceHeadData[]
的输出
却给了我expenceData[]