【发布时间】:2016-08-08 14:36:56
【问题描述】:
我想知道在 Angular 1.5 中,当你使用组件时,是否有一种简单的方法可以绑定一个布尔属性而不用 @ 转换为字符串。
例如,我有两个组件“app-menu”和“app-menuitem”没有嵌入。 “app-menu”只有一个属性,就是要创建“app-menuitem”的项目列表。
<app-menu items="menuitems">
在作为 json 的菜单项中,您有一个名为“isactive”的菜单项属性,它是一个布尔值。
$scope.menuitems = [{ label : 'menuitem 1', isactive : true},{ label : 'menuitem 1', isactive : false}]
在 menuitem 组件中:
angular.module('app')
.component('appMenuitem', {
transclude: false,
controller: menuitemController,
bindings: {
label: '@',
isactive: '@' //<--- The problem is here because the boolean is converted as string
},
templateUrl: 'angular/components/simple/menuitem/menuitem.html'
});
我不知道最好的方法来确保最后是一个真正的布尔值,而不是一个让我产生一些错误的字符串。有人有想法吗?
【问题讨论】:
标签: angularjs angularjs-directive binding components angularjs-components