我想根据控制器内部的一些逻辑设置body
- 元素的方向。
因此,如果语言文件具有特定值,我想从" ltr"到" rtl"。
我知道ng-attr-
通过dir
有一种方式,但它不适用于<div ng-controller="MyCtrl">
<div ng-attr-dir="{{direct}}">
<p>Test</p>
</div>
</div>
var myApp = angular.module('myApp',[]);
function MyCtrl($scope) {
$scope.direct = "rtl";
}
。
我做了一个setting HTML attributes来表明我的问题。问题是:
如何通过控制器设置dir-attribute?
{{1}}
答案 0 :(得分:4)
答案 1 :(得分:0)
可以通过一个简单的指令来完成:
myApp.directive("myDir", function() {
return {
link: function(scope, elem, attrs) {
attrs.$observe("myDir", function(newval) {
if( newval ) {
elem.attr("dir", newval);
}
else {
elem.removeAttr("dir");
}
});
}
};
});
将其用作:
<div my-dir="{{direct}}">
答案 2 :(得分:0)
改为使用内联style="direction:{{direct}}"
。
答案 3 :(得分:0)
您必须使用实际支持的ngAttr
;)1.0的Angular版本。