Angularjs 无法打印ng repeat内的范围变量

Angularjs 无法打印ng repeat内的范围变量,angularjs,angularjs-directive,angularjs-ng-repeat,Angularjs,Angularjs Directive,Angularjs Ng Repeat,我试图在ng重复循环中关联id。有人能建议我怎么做吗 这是密码 <li ng-repeat="agent in agents"> <chart chart-id={{agent}}></chart> </li> 注意:图表是我的指令。假设您的指令如下所示: app.directive('chart', function() { return { restrict: 'E', replace: tr

我试图在ng重复循环中关联id。有人能建议我怎么做吗

这是密码

<li ng-repeat="agent in agents">
     <chart chart-id={{agent}}></chart>
</li>

  • 注意:图表是我的指令。

    假设您的指令如下所示:

    app.directive('chart', function() {
       return {
           restrict: 'E',
           replace: true,
           scope: {
               chartId: '='
           },
           template: '<div>Agent {{chartId.name}} reporting for duty</div>'
       }
    }
    
    app.directive('chart',function(){
    返回{
    限制:'E',
    替换:正确,
    范围:{
    chartId:'='
    },
    模板:“代理{{chartId.name}}为职责报告”
    }
    }
    
    您只需更新代码,删除花括号并添加引号:

    <li ng-repeat="agent in agents">
        <chart chart-id="agent"></chart>
    </li>
    

  • 你能显示你的指令代码是什么样子吗?是的,克里斯,我的指令看起来和你提到的一样。但是它没有附加实际的代理值。它仍然显示在这里是代理数组的样子$scope.agents=[“chart1”、“chart2”、“chart3”]如果你只看DOM,这有点令人困惑,因为angular不会修改DOM的这一部分-查看示例并检查输出中的列表。我想是的。因此,如果我想在任何html元素中显示值,它确实会出现,但是如果我将它与任何id关联,它就不会出现。看起来我必须更改我的approach实现了我的用例。谢谢