2

我有一个指令,该模板使用 ng-include:

<ng-include src="filterTemplate"></ng-include>

模板由指令动态更改:

link: function (scope, element, attrs) {
                switch (scope.type) {
                    case 'string':
                        scope.filterTemplate = "app/common/views/templates/gridHeaderString.html";
                        break;

                    case 'number':
                        scope.filterTemplate = "app/common/views/templates/gridHeaderNumber.html";
                        break;
                    default:
                }

                scope.filter = function () {
                    scope.filters[scope.col.field] = { value: scope.filterValue, operator: scope.filterOperator };
                    scope.searchMethod();
                }
            }

例如,gridHeaderString 模板如下所示:

<input id="test" type="text" placeholder="Filter..." ng-model="filterValue" />

在指令内的过滤器函数中,scope.filterValue 不起作用,因为 filterValue 存在于 ng-include 的子作用域中。

所以在 ng-include 模板中,我尝试过:

ng-model="$parent.filterValue" 

但这仍然行不通。

如何将 ng-include 中的模型绑定到指令的范围?

4

1 回答 1

0

嗯...实际上我认为那是我愚蠢的,我第一次没有刷新缓存。

$parent.filterValue 是要走的路。

于 2013-09-19T15:11:52.980 回答