2015-01-03 110 views
0

如果我訪問

http://0.0.0.0:3000/templates/hippo 

我得到顯示以下頁面:

hungry hungry hippos 

如果我創建一個河馬指令有兩個簡單的GET調用來獲得相同的模板,奇怪的事情發生了。

.directive 'hippo', ($templateCache)-> 
    templateUrl: 'templates/hippo' 
    console.log $templateCache.get('templates/hippo') 

首先,hungry hungry hippos出現<div hippo></div>元素中的頁面上,但由於某種奇怪的原因的$templateCache.get('templates/hippo')日誌總是總是不確定的。

有誰知道這可能是什麼原因造成的?我的路由由rails提供。這裏的頁面負載的服務器日誌:

Started GET "/templates/hippo" for 127.0.0.1 at 2015-01-03 17:16:41 +0000 
Processing by ApplicationController#template as HTML 
    Parameters: {"name"=>"hippo"} 
    Rendered templates/hippo.html (0.0ms) 
Completed 200 OK in 3ms (Views: 2.5ms | ActiveRecord: 0.0ms) 

那得到的是指templateUrl,然而$templateCache.get('templates/hippo')似乎並不像它與我的服務器接口在所有...

這是怎麼回事?

回答

1

首先你需要把模板放到的run階段然後就可以搞定了。 Refer this link

如果您不想明確地將它們放在run階段出於某種原因,您可以在建築物階段使用grunt-angular-templates。還有一個用於吞嚥。
thisthis也將幫助你

+0

好,但會發生什麼,如果有成千上萬的模板(或CEO或president)。他們是否都需要包含在「跑步」階段?這不會淹沒客戶嗎?我們如何只在需要時加載模板?通過使用templateUrl?客戶端是否仍然緩存通過templateUrl提供的模板? – Starkers

+0

'need'你的意思是編譯指令時?當使用'templateUrl'時,我不認爲模板會去'$ templateCache'。 – elaijuh

+0

對不起,當它正在編譯。 – Starkers

相關問題