另一个AngularJS新手问题。
我有一个index.html,控制器和部分。
我的<body>
标记位于index.html中......我想在控制器中为正文设置类。
所以我尝试在$scope.body_class
中粘贴一个值,然后在我的index.html中引用该变量,如下所示:
<!doctype html>
<html lang="en" ng-app="myGreatApp">
...
<body ng-class="{body_class}"> {{body_class}} Hi!
但是body_class
没有返回值。
如何让body_class
返回值?
答案 0 :(得分:2)
对于初学者来说,必须在元素或任何父元素上定义控制器,以便它能够与指令交互(或者你必须注入$ rootScope并使用它)和ng-class指令接受哈希,所以
<body ng-controller="YourController" ng-class="{body_class: <expression>}"> {{body_class}} Hi!
如果<expression>
非常有用,它将获得与哈希中的键对应的html class
。
<body ng-controller="YourController" ng-class="{body_class: true}" class="body_class"> whatever value $scope.body_class has Hi!
如果您不需要在标记中声明类名,则ng-class指令也接受直接绑定,因此您可以改为:
<body ng-controller="YourController" ng-class="body_class"> {{body_class}} Hi!
答案 1 :(得分:1)
试试这个:
控制器的
function SampleCtrl($scope){
$scope.MyClass = 'Hello'
}
HTML 的
<body data-ng-app="" data-ng-controller='SampleCtrl'>
<div data-ng-class="MyClass">Hello World
</div>
</body>