在Aurelia中,一个视图模型如何影响另一个模型视图的绑定变量
我希望我的应用程序主体能够更改标题中显示的消息 例如,如果header.html如下所示:在Aurelia中,一个视图模型如何影响另一个模型视图的绑定变量,aurelia,Aurelia,我希望我的应用程序主体能够更改标题中显示的消息 例如,如果header.html如下所示: <template> ${message} </template> ${message} 对等视图模型如何更改显示的“消息”变量?或者,我可能是完全错误地这样做了……对于您的场景,最常见的解决方案是使用父视图模型来连接两个对等点。使用双向绑定将同一变量(作为单个变量或对象)绑定到两个子级。然后,当一个发生变化时,另一个也会发生变化 示例: 父视图(Parent.html)
<template>
${message}
</template>
${message}
对等视图模型如何更改显示的“消息”变量?或者,我可能是完全错误地这样做了……对于您的场景,最常见的解决方案是使用父视图模型来连接两个对等点。使用双向绑定将同一变量(作为单个变量或对象)绑定到两个子级。然后,当一个发生变化时,另一个也会发生变化 示例: 父视图(Parent.html) Child1视图(header.html)
还有其他方法可以做到这一点,但希望这能让您走上正确的轨道,这样您就可以看到绑定是如何跨视图工作的。谢谢。这对我来说就足够了。最后,我实际使用了来自的解决方案。我的确切情况更适合于在单例中存储一些全局状态。
<template>
<require from="./header"></require>
<require from="./my-child2"></require>
<header message.two-way="message"></header>
<my-child2 message.two-way="message"></my-child2>
</template>
import {bindable} from 'aurelia-framework';
export class Header {
@bindable message;
}
<template>
${message}
</template>
import {bindable} from 'aurelia-framework';
export class MyChild2 {
@bindable message;
attached() {
this.message = "Greetings from MyChild2!";
}
}