2012-12-06 75 views
32

是否可以將html頁面嵌入另一個角度js中?Angular JS和partials

如果是這樣,該怎麼辦?

Here在他們的教程中,部分內容並未嵌入到頁面中,但它就像點擊其中一個項目時不同的頁面。 (see demo

回答

32

是的,你可以使用ngInclude指令。

查看文檔和例子在這裏:http://docs.angularjs.org/api/ng.directive:ngInclude

+22

太可怕了。沒有辦法在不調用新請求的情況下包含部分內容,例如,作爲初始HTML載荷中的可重用片段? – davidgoli

+0

正是我需要的。顯然,這應該謹慎使用,但它完美地重新用於我的登錄表單。 – RevNoah

+9

@davidgoli,據我所知,角緩存加載模板以避免後續請求。 –

6

如果ng-include是不是你需要什麼,你可能要檢查出角UI路由器模塊。它允許您執行嵌套和並行視圖...它非常好,靈活,易於使用且有良好的文檔記錄。 https://github.com/angular-ui/ui-router

7

@Wilt是正確的,但這裏是一個更具體的鏈接和代碼示例(從https://github.com/angular-ui/ui-router/wiki/Quick-Reference#ui-view

在你的根模板:

<div ui-view></div> 
<div ui-view="chart"></div> 
<div ui-view="data"></div> 

而在你的app.config功能

$stateProvider.state("home", { 
    views: { 
     "": { 
      template: "<h1>Some HTML</h1>" 
     }, 
     "chart": { 
      templateUrl: "templates/chart.html" 
     }, 
     "data": { 
      template: "<data_thing/>" 
     } 
    }  
})