javascript - 具有多个选项的 Angular Directive(指令)

标签 javascript angularjs angularjs-directive

我刚刚在 http://plnkr.co/8gJdFrEiplMO7FzOq9Sm 创建了一个 plunkr 示例

我的问题是,为什么我的playerHtml指令没有得到任何输出?

我的玩家指令如下所示

app.directive('playerHtml', function() {
  return {
    restrict: 'A',
    scope: {
      player: '=',
      bold: '=',
      wintype: '='
    },
    templateUrl: 'player.html'
  }
});

和模板

<span ng-if="bold == 1" class="playername winner">{{ player.name }} - {{ player.email }} - {{ wintype }}</span>
<span ng-if="bold == 2" class="playername loser">{{ player.name }} - {{ player.email }} - {{ wintype }}</span>

以及对该指令的调用

<span ng-if="game.winner == 1" player-html player="{{ game.player1 }}" bold="1" wintype="{{ game.wintype }}"></span>
<span ng-if="game.winner != 1" player-html player="{{ game.player1 }}" bold="0" wintype="{{ game.wintype }}"></span>

<span ng-if="game.winner == 2" player-html player="{{ game.player2 }}" bold="1" wintype="{{ game.wintype }}"></span>
<span ng-if="game.winner != 2" player-html player="{{ game.player2 }}" bold="0" wintype="{{ game.wintype }}"></span>

最佳答案

使用 {{}} 是错误的,您正在使用双向绑定(bind)将数据传递给指令,您需要传递一个被求值的表达式,而不需要 {{}}。

http://plnkr.co/edit/x3I0PTqA0VZB05pFC3vx?p=preview

<span ng-if="game.winner == 1" player-html player="game.player1" bold="1" wintype="game.wintype"></span>
<span ng-if="game.winner != 1" player-html player="game.player1" bold="0" wintype="game.wintype"></span>

<span ng-if="game.winner == 2" player-html player="game.player2" bold="1" wintype="game.wintype"></span>
<span ng-if="game.winner != 2" player-html player="game.player2" bold="0" wintype="game.wintype"></span>

关于javascript - 具有多个选项的 Angular Directive(指令),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33406136/

相关文章:

testing - Angular http 测试

javascript - 与 'undefined` 的比较是否仍然进行全局范围查找?

javascript - 如果我从不调用回调,JavaScript 会发生什么?

javascript - JS : Click h1 to set display to none at another div

javascript - 如何在 Kendo UI 工具栏中动态添加按钮?

javascript - 从 AngularJS $element 获取表 TD 值

javascript - 指令中的 Angular 应用类

javascript逐行调试器

angularjs - ng-style 更新速度不够快

javascript - 如何在 Angularjs Protractor 中使用命令行参数?