如何给directive添加一个默认属性
我自己有个指令叫做keyboard,就是键盘了,键盘上面按键分两种:数字和非数字。我想通过下面的代码,让keyboard只显示数字部分,把非数字都隐藏了。
// index.html
<keyboard onlynumber="true"></keyboard>
// directive.js
// 下面我用了@不行,用=也不行,请懂的人顺便解释下
function keyboardNumber() {
var directive = {
restrict: 'EA',
scope: {
onlynumber: '='
},
templateUrl: 'keyboard.html',
replace: true
};
return directive;
}
// keyboard.html
<div class="keyboard">
...
<div data-ng-hide="onlynumber"></div>
...
</div>
却没能隐藏,上网搜,我也不知道搜什么关键词(真是要命),结果搜到stack overflow有个哥们情况跟我类似,虽然问题没解决,但是有个回答给了我些启发:如果你的值是不变的,那你可以只写属性
<keyboard onlynumber></keyboard>
这样写看起来更简洁好看,然而我还是不知道怎么做,聪明的你,能告诉我怎么做吗,多谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
答案提交后,发现我第一种写法是可以将true传到指令模板的,但是
这种有人知道怎么实现吗
这种在解析的时候会被认为是这种形式:
如果你只是希望给指令配置一个默认值的话,在指令内部取onlynumber这个参数的时候设定就可以了,没必要在前面搞。