删除会话存储角度 8 中的特定元素
Remove a particular element in session storage angular8
我有一个方向列表
countryList = ["South","East","West"]
<div *ngFor="let country of countryList">
<mat-checkbox (change)="checkBoxClicked(country, $event)">
{{country}}
</mat-checkbox>
</div>
显示为垫复选框。因此,当用户选择特定方向时,我尝试将其存储在会话存储中
checkBoxClicked(list, event) {
if (event.checked) {
sessionStorage.setItem("TestingSelectedPages",JSON.stringify({ 'Countries': list}));
}
else {
//How to remove the same ???
}
}
比如Session存储值是这样的
我的意思是,如果我取消选中某个特定元素(例如,"South"),如何从列表中仅删除 South 并将其他元素保留在会话存储中。
您在会话存储中获取项目,添加新项目或删除并更新会话存储
const current = JSON.parse(sessionStorage.getItem(TestingSelectedPages));
current.push(your new item to add);
sessionStorage.setItem(TestingSelectedPages, JSON.stringify(current));
首先,强烈推荐使用类型。
此外,JSON 键最好采用驼峰式命名以获得最佳实践。
现在,我将执行以下操作
checkBoxClicked(list: string[], event: Event) {
let directionList: string[] = JSON.parse(sessionStorage.getItem('TestingSelectedPages'));
if (event.checked) {
directionList.countries.push(event.value);
}
else {
directionList = directionList.countries.filter((direction: string) => direction !== event.value)
}
sessionStorage.setItem("TestingSelectedPages", JSON.stringify({ 'countries': directionList }));
}
希望对您有所帮助!
您将获得 list
,其中包含您选中或取消选中复选框后的更新值。所以可以直接使用setItem
方法来更新session存储值。
checkBoxClicked(list, event) {
if (event.checked) {
sessionStorage.setItem("TestingSelectedPages",JSON.stringify({ 'Countries': list}));
} else {
sessionStorage.setItem("TestingSelectedPages",JSON.stringify({ 'Countries': list}));
}
}
我有一个方向列表
countryList = ["South","East","West"]
<div *ngFor="let country of countryList">
<mat-checkbox (change)="checkBoxClicked(country, $event)">
{{country}}
</mat-checkbox>
</div>
显示为垫复选框。因此,当用户选择特定方向时,我尝试将其存储在会话存储中
checkBoxClicked(list, event) {
if (event.checked) {
sessionStorage.setItem("TestingSelectedPages",JSON.stringify({ 'Countries': list}));
}
else {
//How to remove the same ???
}
}
比如Session存储值是这样的
我的意思是,如果我取消选中某个特定元素(例如,"South"),如何从列表中仅删除 South 并将其他元素保留在会话存储中。
您在会话存储中获取项目,添加新项目或删除并更新会话存储
const current = JSON.parse(sessionStorage.getItem(TestingSelectedPages));
current.push(your new item to add);
sessionStorage.setItem(TestingSelectedPages, JSON.stringify(current));
首先,强烈推荐使用类型。 此外,JSON 键最好采用驼峰式命名以获得最佳实践。 现在,我将执行以下操作
checkBoxClicked(list: string[], event: Event) {
let directionList: string[] = JSON.parse(sessionStorage.getItem('TestingSelectedPages'));
if (event.checked) {
directionList.countries.push(event.value);
}
else {
directionList = directionList.countries.filter((direction: string) => direction !== event.value)
}
sessionStorage.setItem("TestingSelectedPages", JSON.stringify({ 'countries': directionList }));
}
希望对您有所帮助!
您将获得 list
,其中包含您选中或取消选中复选框后的更新值。所以可以直接使用setItem
方法来更新session存储值。
checkBoxClicked(list, event) {
if (event.checked) {
sessionStorage.setItem("TestingSelectedPages",JSON.stringify({ 'Countries': list}));
} else {
sessionStorage.setItem("TestingSelectedPages",JSON.stringify({ 'Countries': list}));
}
}