2015-06-14 31 views
1

我開始學習AngularJs,我想知道爲什麼我的代碼不工作?我想知道爲什麼h1標籤沒有變爲橙色ng-class="'orange'"ng-class在h1內部不能正常工作?

我知道答案可能很簡單,但我剛開始。

這裏是我的index.html:

<html ng-app="app"> 
    <head> 
     <style type="text/css"> 
     </style> 

    </head> 
    <body> 

     <div ng-controller="MainController"> 
      <h1 ng-class="'orange'">Hello There</h1> 
     </div> 


     <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js"></script> 
     <script type="text/javascript" src="app.js"></script> 
    </body> 
</html> 

在這裏,我app.js:

var app = angular.module('app', []); 

app.controller('MainController', function($scope) { 

}) 

附:在控制檯中沒有錯誤。

+0

您正在使用單引號,您知道原因嗎? – nikhil

+0

我傳遞了一個字符串否?我認爲'橙色'是默認定義的東西,因爲實際上在我使用此代碼工作的視頻過程中。 – xunga

+0

似乎在這裏工作http://plnkr.co/edit/fsJtf6QRZJvDaiEcyRo3?p=preview – eladcon

回答

1

它必須工作。因爲作爲結果,您將直接給予該類string變量,其值爲帶有單引號的orange

這是一樣的,你是像定義是從爲

<h1 ng-class="class">Hello There</h1> 

代碼

$scope.class='orange'; 

這兩種方法是作爲一個同樣的事情返回值範圍變量。

更新

您需要添加CSS類來獲得這些變化

<style type="text/css"> 
    .orange { 
    color: orange; 
    } 
</style> 

Demo Plunkr

+0

但它仍然是黑色的,它不應該變成橙色嗎? – xunga

+0

@mrxd看看我的edit..it應該現在工作..你錯過了添加css類 –

+0

Aaaah所以ng類去css。我認爲它取代了CSS。 好的,謝謝! – xunga

1

當你想有一個動態或範圍的相關類納克級使用,如果你想有一個靜態類只是使用類。我看到你的評論,它不會以任何方式取代任何CSS。它只是一種動態交換css類的方式。

<h1 ng-class="class">Hello There</h1> 

,並在控制器

$scope.class='orange'; 

或condiotions:

<h1 ng-class="{'danger' : condition}"><Hi</h1> 

或tenaric如果:

您可以通過多種方式,比如用它

<h1 ng-class=" condition? 'danger' : 'warning'">Hi</h1> 

natuarlly條件在範圍中定義,''項目是要添加的類

+0

謝謝你的解釋! – xunga

+0

我的榮幸,隨時:) –