αφαιρέστε κατάσταση του συγκεκριμένου συστατικού όταν προέρχονται από συγκεκριμένη οδό της γωνιακής

ψήφοι
0

Έχω αρχική σελίδα μου, από εκεί κάντε κλικ στο εικονίδιο αναζήτησης που ανοίγει νέες «/ αναζήτησης» συστατικό του οποίου η κατάσταση είμαι διατηρώντας χρησιμοποιώντας την επαναχρησιμοποίηση-στρατηγικής. Αυτό με βοηθά να διατηρούν την κατάσταση όταν ο χρήστης επεξεργάζεται ένα από τα αποτελέσματα αναζήτησης.

αλλά θέλω, αν μπορώ να επιστρέψετε στην αρχική σελίδα. Θέλω να καθαρίσετε μου κατάσταση του / της αναζήτησης. πώς μπορώ να το ρυθμίσετε;

Έχω χρησιμοποιήσει την επαναχρησιμοποίηση-στρατηγική όπως αυτό:

    private handlers: { [key: string]: DetachedRouteHandle } = {};
    shouldDetach(route: ActivatedRouteSnapshot): boolean {
        if (!route.routeConfig || route.routeConfig.loadChildren) {
            return false;
        }
        let shouldReuse = false;
        // console.log(checking if this route should be re used or not, route);
        if (route.routeConfig.data) {
            route.routeConfig.data.reuse ? shouldReuse = true : shouldReuse = false;
        }
        return shouldReuse;
    }
    store(route: ActivatedRouteSnapshot, handler: DetachedRouteHandle): void {
        // console.log(storing handler);
        if (handler) {
            this.handlers[this.getUrl(route)] = handler;
        }
    }
    shouldAttach(route: ActivatedRouteSnapshot): boolean {
        // console.log(checking if it should be re attached);
        return !!this.handlers[this.getUrl(route)];
    }
    retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle {
        if (!route.routeConfig || route.routeConfig.loadChildren) {
            return null;
        };
        return this.handlers[this.getUrl(route)];
    }
    shouldReuseRoute(future: ActivatedRouteSnapshot, current: ActivatedRouteSnapshot): boolean {
        let reUseUrl = false;
        if (future.routeConfig) {
            if (future.routeConfig.data) {
                reUseUrl = future.routeConfig.data.reuse;
            }
        }
        const defaultReuse = (future.routeConfig === current.routeConfig);
        return reUseUrl || defaultReuse;
    }
    getUrl(route: ActivatedRouteSnapshot): string {
        if (route.routeConfig) {
            const url = route.routeConfig.path;
            // console.log(returning url, url);
            return url;
        }
    }
}
Δημοσιεύθηκε 19/03/2020 στις 21:55
πηγή χρήστη
Σε άλλες γλώσσες...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more