AngularJs中 ng-repeat指令中实现含有自定义指令的动

网络编程 2025-03-25 03:40www.168986.cn编程入门

你需要理解AngularJS中的自定义指令是如何工作的。自定义指令允许你扩展HTML的语法,为页面添加新的功能。当我们在ng-repeat中遇到含有自定义指令的动态HTML时,我们需要确保这些指令能够正确地被和执行。

指令定义与模板改造

我们更新指令的模板以包含一个操作列,并允许在这个列中使用自定义的HTML和指令。

`tableTem.html`:

```html

{{header}}

操作

```

指令代码改造与扩展

在指令的控制器部分,我们增加一个`actions`数组来存储操作列的配置信息。每个操作都有一个名称、内容和可能的ng-click指令。

指令代码:

```javascript

myCommon.directive("myStandTable", function () {

return {

restrict: "A",

templateUrl: "app/template/tableTem.html",

transclude: false,

replace: true,

controller: function ($scope) {

$scope.tableData = {

multiSelect: false,

pageSize: [10, 20, 50],

```javascript

myCommon.filter("trusted", function ($sce) {

return function (html) {

if (typeof html == "string") {

return $sce.trustAsHtml(html);

}

return html;

}

});

```

```javascript

myCommon.directive("pileBindExpn", function ($pile) {

return function linkFn(scope, elem, attrs) {

scope.$watch("::" + attrs.pileBindExpn, function (html) {

if (html && htmldexOf("<") != -1 && htmldexOf(">") != -1) {

var expnLinker = $pile(html);

expnLinker(scope, function transclude(clone) {

elem.empty();

elem.append(clone);

});

} else {

elem.empty();

elem.append(html);

}

});

}

});

```

上一篇:php显示时间常用方法小结 下一篇:没有了

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by