簡體   English   中英

Aurelia路由到相同的moduleID

[英]Aurelia routing to the same moduleID

嗨,我在Gitter問過這個問題,但希望這里有人可以提供幫助。

我有兩個具有相同moduleId的不同路由。 我還在路徑中設置了一個設置對象,其中包含一些數據來區分渲染的內容。 當我從其他地方導航到其中一條路線時,一切正常,但是如果我從一條路線導航到另一條路線,則不會觸發構造函數或激活。 我錯過了什么?

我有這個問題,我花了一段時間才找到解決方案 - 這對我希望有所幫助;

您需要將determineActivationStrategy()方法添加到您的類中,然后返回如下。

import {activationStrategy} from "aurelia-router";

export class ExampleViewModel {

    determineActivationStrategy() {
        return activationStrategy.replace;
    }

}

當您從自身路由到VM時,這將強制更換VM。

以下是有關不同激活策略類型的更多信息;

activationStrategy.no-change - 重用沒有生命周期事件的實例

activationStrategy.invokeLifecycle - 每次路由切換時,在ViewModel實例上調用生命周期方法

activationStrategy.replace - 構造ViewModel的新實例並在其上調用完整的生命周期

從這里采取ZombieCodeKill - Aurelia路由超越基礎

這里找到了答案:)雖然不是一個完整的解決方案開箱即用,但實現是可能的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM