我已经在一个聚合物组分如下:条件模板似乎并没有工作
<dom-module id="ws-auth">
<template>
<template is="dom-if" if="{{screen.initial}}">
<a on-click="doLocalLogin">Local Login</a>
</template>
<template is="dom-if" if="{{screen.localLogin}}">
login screen
</template>
</template>
</dom-module>
<script>
(function() {
Polymer({
is: 'ws-auth',
properties: {
screen: {
type: Object,
notify: true
}
},
attached: function() {
if (!this.screen) {
this.screen = {
initial: true
}
};
},
doLogin: function() {
this.screen = {
login: true
}
},
doLocalLogin: function() {
this.screen = {
localLogin: true
}
}
});
})();
当我点击“本地登录”第一模板不隐藏。我期望它隐藏起来,因为我将屏幕设置为一个没有定义'初始'属性的新对象。还有就是我努力去理解另一件事:如果我将屏幕对象
{
initial: false,
localLogin: true
}
在doLocalLogin()函数,什么都没有发生。
此外,您可以在if标签中使用的表达式似乎相当有限。只有属性似乎工作,没有函数调用,'==='等是这样吗? – Janos
Plunkr:http://plnkr.co/edit/2w5ghun93mU3mSIzm8Ip?p=preview – Janos