На самом деле у меня есть две страницы, страница productList и страница productDetail. Для просмотра отдельных сведений о продукте у меня есть кнопка просмотра для каждого продукта из списка продуктов. Как показано ниже,
A | B | C | Action
---------------------------
aaa | bbb | ccc | View
abc | def | ghi | View
Также у меня есть фильтрация для каждого поля на странице списка. Например, для фильтрации поданного «A» я использовал обычный выбор, а для «B» - выпадающий список с несколькими выборками, ng-multiselect-dropdown .
Сценарий,
На странице списка, если я делаю фильтрацию для B, это должно применяться.
Затем я нажимаю кнопку просмотра и вижу детали.
Снова возвращаясь к странице списка, фильтрация должна быть там. (концепция, которую я пытаюсь)
Для фильтрации я использовал обычные select
и <ng-multiselect-dropdown>
.
Для вышеупомянутой концепции я использовал метод локального хранения.
И его работа хороша для select
.
Но в случае <ng-multiselect-dropdown>
применяется фильтрация. Но если я go для детализации страницы и возврата на страницу списка, фильтрация не применяется.
Ниже приведен код;
<label>Status</label>
<ng-multiselect-dropdown [data]="statusList" name="iorstatus" #iorstatus="ngModel"
[(ngModel)]="selectedItems" [settings]="dropdownSettings" (onSelect)="onItemSelect($event)"
(onDeSelect)="statusDeSelect($event)">
</ng-multiselect-dropdown>
</div>
Локальное хранилище
const testObject = {
status: this.displayStatusList
}
localStorage.setItem ('testObject', JSON .stringify (TestObject)) *; 1054 *
с этого шага: я получил выбранное значение в статусе.
Затем я применил метод
onInit(){
this.getMethod()
}
getMethod(){
if (localStorage.getItem('testObject')) {
let filterObject = localStorage.getItem('testObject');
this.iorfilteroptions = JSON.parse(filterObject);
this.iorstatus = this.iorfilteroptions.status;
this.selectedItems= this.iorfilteroptions.status;
this.displayStatusList = this.iorfilteroptions.status;
}
}
Но это не работает ... Кто-нибудь может мне помочь ??