我的指示如下:
directive('setAttribute', function () {
return {
restrict: 'A',
require: 'ngModel',
link: function ($scope, element, attrs, ctrl) {
var prop = $scope.$eval(attrs.setAttribute);
prop.validationRulesToApply.forEach(function (rule) {
attrs.$set(rule.name, rule.val);
});
}
}
});
您可以这样动态设置属性。尽管属性设置正确(我可以在最终的HTML中看到它们),但不会触发验证。当我用花括号输出$ error对象时 - 它是空的!设置属性时,我是否会遗漏一些重要内容?
答案 0 :(得分:0)
您是否尝试在setAttribute指令中添加这些验证规则?
如果是这样,你的做法是错误的。当你使用$ set时,它只是向HTMl添加属性,但不编译它们。 因此,你不会得到你想要的结果。
您需要将其添加到预编译中 我认为solution可以帮到你。