我在AngularJS上遇到了一些问题。 我的控制器,mainCtrl,有这个变量:从ng-repeat ng-style的范围访问变量
this.colors = {Sam:blue,Jane:red,Tom:pink};
this.arr = [{person:'Sam',story:'some story'},{name:'Tom',story:'some story2'}]
而且我得到这个代码:
<div ng-controller="mainCtrl as vm">
<ul ng-repeat="obj in arr">
<li ng-style={color:vm.color[obj.person]}>{{obj.story}}</li>
</ul>
</div>
我想的是,李会的人在颜色字典中的颜色被染色。我该如何处理?我不确定每次得到的,但是当我这样做,显式地开展工作,例如:
<li ng-style={color:vm.color['Sam']}>{{obj.story}}</li>
被改编为未定义或OBJ? –
看来,你首先定义this.colors,然后用它作为颜色(没有最后的'') – Yoann