に」トンの仕事をdoesnの私は、関数を書いた:いくつかの変数がvuejs
getClassTable() {
var classNormalData = this.classData.normal,
alterClasses = this.classData.alter.classes,
classTable = [];
for(var day in classNormalData) {
classTable.push(classNormalData[day]);
}
if(alterClasses != []) {
alterClasses.forEach(function(item, index) {
var date = item.time,
lesson = item.lesson;
for(var i = 0; i < 4; i++){
var time = this.dates[i],
classes = classTable[i][lesson];
if(time == date) {
classes.subject = item.subject;
break;
}
}
}, this)
}
this.classTable = classTable;
}
}
しかしclasses.subject = item.subject
作品、代が間違っていました。それは変更this.classData
のように見えました。変数classNormalData
classTable
はうまく機能しませんでした。 なぜですか?
シモンズ:this.classData
は、オブジェクトへのポインタとして、JavaScriptではここ
computed: {
classData() {
return this.$localStorage.get('classList');
},
}
jsfiddleで再現可能なvue変数をコンソールに追加することもできますか? – Saurabh
ありがとうございます。私はちょうど今それを解決する方法を知っていた。これは、objを変数として設定すると、実際には元のオブジェクトにリンクするためです。私はアプローチが 'var newObj = JSON.parse(JSON.stringify(obj))' – Xile