2013-08-21 40 views
4

我是angularjs的新手,並試圖在Facelets文件中創建一個示例angularjs。但是我在Eclipse IDE中的錯誤<html ng-app>中。該錯誤指定ng-app屬性後應跟一個=字符。是否可以在Facelets XHTML文件中包含angularjs代碼?我們是否可以在Facelets頁面中包含angularjs組件

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns:ng="http://angularjs.org" ng-app> 
<head> 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.min.js"></script> 
</head> 
<body> 
<div> 
<label>Name:</label> 
<input type="text" ng-model="yourName" placeholder="Enter a name here"> 
<hr> 
<h1>Hello {{yourName}}!</h1> 
</div> 
</body> 
</html> 
+0

向我們展示錯誤報告的代碼部分。 –

+0

IDE可能只是試圖驗證文件的HTML。您的應用程序仍然只能使用'ng-app'屬性。 – AlwaysALearner

+0

但我試圖訪問使用Firefox的頁面。它沒有工作。 – aquero

回答

0

給ng-app的屬性。

該屬性的值將與包含angular.module()的返回值的變量的名稱相同。

用於離: 納克應用內= 「SampleApp」
在html頁面

變種SampleApp = angular.module( 「SampleApp」,[ 「ngResource」])。 配置(

//你的代碼

);

在app.js文件中

我認爲這應該適合您。

其邏輯是,當你定義ng-app時,它會引用app.js的特定模塊,它將調用相關的控制器。

+0

我是AngularJS的新手,所以我無法理解你的答案。如有可能,請提供一個示例代碼。 – aquero

+0

我真遺憾,我不能把代碼放在這裏。但讓我給你解釋一下。 –

0

在angularjs中有一個app.js文件。這包含所有的控制器定義。這些控制器充當html(我們的視圖)和.cs(mvc控制器)文件之間的連接器和數據管道器。

這些控制器是在一個模塊中定義的(正如我在上面的答案中定義了一個)。

app.js中可以有很多模塊。因此他們將擁有衆多的控制器。

ng-app是一個指令,它包含要用作屬性的模塊的名稱。 定義的ng-app將一直處於激活狀態,直到定義標籤的結束標籤。這意味着如果你已經在html標籤中定義了ng-app,它將一直工作到html標籤關閉,如果在div中,它將適用於該分割。

如果你沒有得到任何東西,谷歌它,或引用angularjs文檔,或射擊我一個問題。

我希望你得到的東西出來吧:-)

0

在搜尋自己的同時,發現了這個問題。

XHTML不允許沒有值的屬性。儘管你可以在Eclipse中忽略這一點,但最新的JSF庫爆炸了,你會得到一個異常。

指定一個值,它對應於您的模塊名稱。例如,如果你初始化你的角模塊:

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

然後你需要指定:

<html ng-app="myApp"> 

而且都應該是好的減去一些警告在Eclipse中未及時發現「NG-應用」。適用於我。此外,您可能需要HTML 5文檔類型,而不是嚴格的。請嘗試:

<!DOCTYPE html> 
<html ng-app="myApp"> 
+0

你可以使用'data-ng -...'來避免一些警告。 –

相關問題