vue.js - 我在 vue.js 中遇到错误-“filteredTeamsData”计算属性中的意外副作用
问题描述
“filteredTeamsData”计算属性中的意外副作用
我已经导入了两个 JSON 文件
- 从'../assets/data/season_list.json'导入季节列表
- 从“../assets/data/match_team.json”导入团队数据
代码 -
export default {
name: 'SeasonSplit',
components: {
TableElement,
},
data () {
return {
selected: '1',
teamData: teamData,
teamList: [],
seasonList: seasonList,
filteredData: [],
tableColumns: ['toss_wins', 'matches', 'wins', 'losses', 'pts']
}
},
computed: {
filteredTeamsData: function () {
this.dataArr = []
this.filteredData = []
this.teamList = []
teamData.forEach(element => {
if(element.season == seasonList[this.selected-1]){
this.filteredData.push(element)
this.teamList.push(element.team)
this.dataArr.push(element.wins)
}
})
// console.log(this.filteredData)
return this.dataArr
}
}
}
解决方案
我会这样做:
export default {
name: 'SeasonSplit',
components: {
TableElement,
},
data () {
let filteredData = [];
let teamList = [];
let dataArr = [];
teamData.forEach(element => {
if(element.season == seasonList[this.selected-1]){
filteredData.push(element)
teamList.push(element.team)
dataArr.push(element.wins)
}
});
return {
selected: '1',
teamData: teamData,
teamList: teamList ,
seasonList: seasonList,
filteredData: filteredData ,
tableColumns: ['toss_wins', 'matches', 'wins', 'losses', 'pts'],
filteredTeamsData: dataArr
}
}
推荐阅读
- php - 在 laravel 5.6 中无法使用邮递员使用 api 路由
- node.js - 为什么 node.js 中的 selenium 函数 elementLocated 只在 Jenkins 上抛出错误?
- java - 使用 writeValueAsString 序列化对象后 Jackson 反序列化失败
- python - Python 多处理 - 从池中动态重新分配作业 - 没有异步?
- c - 内联与静态内联c
- python - TensorFlow 错误 model.fit()
- java - 线程“main”中的异常 java.util.IllegalFormatConversionException: f != java.lang.Integer
- mule - 如何在 Mule 4 中获取有效负载 mime 类型
- apache-kafka - 重新设置密钥后 Kafka 加入 - 缩放
- javascript - Spring - 使用 Javascript 访问模型中的对象