Javascript 直接导航到子模板时,把手绑定在父模板上不起作用
仪表板模板:Javascript 直接导航到子模板时,把手绑定在父模板上不起作用,javascript,ember.js,handlebars.js,ember-cli,Javascript,Ember.js,Handlebars.js,Ember Cli,仪表板模板: <div id="main-container" class="container bgNotFaded" {{bind-attr class="faded:bgFaded"}}> 褪色是我遇到麻烦的财产 步骤: 导航到-->www.example.com/dashboard 然后通过链接导航到-->www.example.com/dashboard/account ---此时一切正常,我的背景淡入淡出状态,淡入淡出状态设置为true--- 接下来我刷新页面www.e
<div id="main-container" class="container bgNotFaded" {{bind-attr class="faded:bgFaded"}}>
褪色
是我遇到麻烦的财产
步骤:导航到-->
www.example.com/dashboard
然后通过链接导航到-->
www.example.com/dashboard/account
---此时一切正常,我的背景淡入淡出状态,
淡入淡出状态
设置为true---接下来我刷新页面
www.example.com/dashboard/account
---即使加载了
accountRoute
,背景也不会褪色
我的帐户路径
:
export default Authenticated.extend({
renderTemplate: function() {
this.render({
into: 'dashboard',
outlet: 'modal'
});
},
setupController: function(controller){
var dashController = this.controllerFor('dashboard');
dashController.set('faded', true);
....
},
...
)};
我的路由器设置如下:
this.resource('dashboard', {path: '/'}, function() {
...
this.resource('account', {path: '/account'}, function() {
因此,我知道正在加载仪表板模板。事实上,如果我打开ember inspector,我可以在我的Dashboard Controller
上看到属性fladed==true
,但是类bgladed
不在我的渲染模板中
问题为什么当我直接导航到子路线时,父模板中的把手绑定不起作用
谢谢。除了使用
bind attr
之外,在元素上定义class属性时,我遇到了一些问题。试一试
<div id="main-container" {{bind-attr class=":container :bgNotFaded faded:bgFaded"}}>
我最初的猜测是,当您刷新页面时,褪色的
状态正在重置。是否可以提供一个jsbin示例?@JDillon522flade的状态正在重置。我可以在chrome中通过设置断点来实现这一点。因此,当页面最初加载<代码>时,淡入淡出的<代码>为false,但当它点击<代码>帐户的<代码>设置控制器<代码>时,淡入淡出的<代码>设置为true。因此,fladed
被设置为true,但由于某种原因,它没有将类bgladed
添加到我的template.ha中,这完全有效。我甚至不认为这是个问题。谢谢你,伙计。
<div id="main-container" {{bind-attr class=":container :bgNotFaded faded:bgFaded"}}>