Angular 模态:从按钮列表中添加按钮
Angular modal: add buttons from button list
正在尝试从按钮列表中为每个模式添加按钮。
脚本:
var buttonList2 = [{displayName: 'Save', class: 'save'},
{displayName: 'Cancel', class: 'cancel'}];
Html:
<button class="btn" type="button" ng-repeat = "item in buttonList" ng-class="{{item.class}}">{{item.displayName}}</button>
每个按钮都有自己的 class,所以我在列表中添加了 class 属性。
但是 ng-class 没有看到 {{item.class}}
而且我无法向这些按钮添加功能。我试过这个:
$('.cancel').attr('ng-click','cancel()');
$compile($('.cancel'))($scope);
$('.save').attr('ng-click','save()');
$compile($('.save'))($scope);
这可能是最好的评论,但我还不能发表评论。
是否有可能/不好的做法:
class="{{item.class}}"
要动态应用 css 类 使用 ng-class="item.class"
而不使用 {{}}
。
要向按钮添加回调,您可以向包含特定功能的按钮添加额外的 属性:
var buttonList2 = [
{displayName: 'Save', class: 'save', callback: function(){alert('saving');}},
{displayName: 'Cancel', class: 'cancel', callback: function(){alert('cancelling');}}
];
在您的 ng-repeat
中,您可以通过以下方式应用它们:
<button type="button" ng-repeat="item in buttonList2" ng-click="item.callback()" ng-class="item.class">{{item.displayName}}</button>
正在尝试从按钮列表中为每个模式添加按钮。
脚本:
var buttonList2 = [{displayName: 'Save', class: 'save'},
{displayName: 'Cancel', class: 'cancel'}];
Html:
<button class="btn" type="button" ng-repeat = "item in buttonList" ng-class="{{item.class}}">{{item.displayName}}</button>
每个按钮都有自己的 class,所以我在列表中添加了 class 属性。 但是 ng-class 没有看到 {{item.class}}
而且我无法向这些按钮添加功能。我试过这个:
$('.cancel').attr('ng-click','cancel()');
$compile($('.cancel'))($scope);
$('.save').attr('ng-click','save()');
$compile($('.save'))($scope);
这可能是最好的评论,但我还不能发表评论。
是否有可能/不好的做法:
class="{{item.class}}"
要动态应用 css 类 使用 ng-class="item.class"
而不使用 {{}}
。
要向按钮添加回调,您可以向包含特定功能的按钮添加额外的 属性:
var buttonList2 = [
{displayName: 'Save', class: 'save', callback: function(){alert('saving');}},
{displayName: 'Cancel', class: 'cancel', callback: function(){alert('cancelling');}}
];
在您的 ng-repeat
中,您可以通过以下方式应用它们:
<button type="button" ng-repeat="item in buttonList2" ng-click="item.callback()" ng-class="item.class">{{item.displayName}}</button>