0
我不明白爲什麼只有第一個if語句運行如果語句不運行,雖然條件得到滿足
首先,我設置currentLevel屬性是什麼樣的會議
public currentLevel:any;
this.currentLevel = JSON.parse(sessionStorage.getItem('level'));
這如果語句運行和currentLevel.lvl設置爲null
if (!this.currentLevel) {
this.currentLevel = {lvl: null};
}
這個if語句不運行首次執行 但它確實運行在S的方法的Econd一次被執行,那麼整個 方法按預期工作
if (this.currentLevel.lvl == null) {
sessionStorage.setItem('level', JSON.stringify({lvl: '1'}));
}
}
全碼
setLevel(){
this.currentLevel = JSON.parse(sessionStorage.getItem('level'));
if (!this.currentLevel) {
this.currentLevel = {lvl: null};
}
if (this.currentLevel.lvl == null) {
sessionStorage.setItem('level', JSON.stringify({lvl: '1'}));
}else if(this.currentLevel.lvl == '1'){
sessionStorage.setItem('level', JSON.stringify({lvl: '2'}));
}else if(this.currentLevel.lvl == '2'){
sessionStorage.setItem('level', JSON.stringify({lvl: '3'}));
}else if(this.currentLevel.lvl == '3'){
sessionStorage.setItem('level', JSON.stringify({lvl: '4'}));
}else if (this.currentLevel.lvl == '4') {
sessionStorage.setItem('level', JSON.stringify({lvl: 'complete'}));
}
// console.log(this.currentLevel.lvl);
}