2015-07-20 96 views
4

我有很多html模板需要渲染到一個頁面。有什麼辦法可以逐一渲染每個單獨的模板,以便用戶在瀏覽頁面之前不必等待所有模板?如何呈現多個html文件一個接一個的角?

每個部分都是模板化的,我使用指令在主HTML文件中訪問它們。每個模板也訪問一個數據庫,所以我認爲這是減緩渲染過程。我想我要問的是,是否有角度訪問數據和渲染前幾個模板,讓用戶瀏覽頁面,而其餘的都在渲染過程中。

<company-header ctrl='infoCtrl' class='company-fixed-header'></company-header> 
<div class="wrap"> 
    <div class='dynamic-container'> 

     <div class='content'> 
      <section id='details'> 
       <company-Identifiers-List ctrl='infoCtrl'></company-Identifiers-List> 
       <contact-Information-List ctrl='infoCtrl'></contact-Information-List> 
       <company-Information-List ctrl='infoCtrl'></company-Information-List> 
       <regulatory-Filing-List ctrl='infoCtrl'></regulatory-Filing-List> 
       <securities-Manuals ctrl='infoCtrl'></securities-Manuals> 
      </section> 
      <section id="securities"> 
       <security-info ctrl='infoCtrl'></security-info> 
      </section> 
     </div> 
    </div> 
</div> 
+1

需要更具體一些,問題很模糊......但是,有很多方法來呈現多個html文件.... angular旨在做到這一點 – charlietfl

+0

同意@charlietfl,需要更多信息。如果加載是一個問題,您可能需要考慮將您的模板內聯注入主index.html文件。 – ngDeveloper

+0

爲什麼不使用嵌套指令.... – binariedMe

回答

1

有一種不同的方式來解決您的問題,這是加載在$ templateCache您的諧音(https://docs.angularjs.org/api/ng/service/ $ templateCache)。這樣,您不必在需要時爲每個視圖發出AJAX請求,因此幾乎立即加載指令的內容。

你可以這樣做:

$templateCache.put('company-identifiers-list.html', '<div>your content</div>'); 
$templateCache.put('company-information-list.html', '<div>your content</div>'); 

此外,如果你使用的咕嚕,你可以使用自動化此grunt-angular-templates任務。

相關問題