我能够在我的控制器上执行此操作(标题),我想知道我是否也可以在我的指令上执行此操作。
让我们说我将过滤器注入我的指令......
app.directive('ngDirective',
['$compile','$filter',
function ($compile, $filter) {
'use strict';
在链接功能中我有以下内容。
var filter = $filter('i18n');
var requiredMessage = filter('is_required');
我知道在指令中我失去了我的范围,这可能是原因。
编辑:这是我的代码预览http://plnkr.co/edit/u1L9SHdAvZnvEqwVBeJg
的plunker有关如何解决此问题的任何想法?
答案 0 :(得分:0)
如果您想使用某些过滤器,则必须加载它。
以下是在指令模块中定义过滤器和加载的示例。
http://plnkr.co/edit/61X6i32By8PA6W7BLh52?p=preview
angular.module('myfilters', []).
filter('i18n', function() {
return function() { return 'my message'; };
});
angular.module('myapp', ['myfilters']).
directive('ngTest', function($compile, $filter) {
'use strict';