2015-04-22 83 views
0

我想使用AngularJS來分離我的jQuery移動HTML。但似乎ng-include不能包含外部HTML作爲父內容,父級CSS和js不適用於它。下面是一個例子。你想讓我知道如何解決它?如何使用AngularJS ng-include?

下面是例子。
http://plnkr.co/edit/I91t9mjGJ58ZS4H2bymL?p=preview

+0

歡迎堆棧溢出!請注意: :尋求調試幫助的問題(「爲什麼這個代碼不工作?」)必須包含所需的行爲,特定的問題或錯誤以及在問題本身中重現它的最短代碼。因此,您有一個原因要求不要發佈沒有代碼的鏈接!如果你可以在問題本身添加一個小例子,它將同時得到更多的關注,並對未來的讀者和那些不能訪問重複的人有價值。 – SW4

回答

0

很顯然,由於CORS策略,您無法直接從其他站點訪問外部文件。

如果您確實想從其他站點獲取具有不同域名的模板,請確保該域爲您提供了$http.get的API模板字符串,然後您可以將它注入到您的視圖中的Angular控制器中可以從中訪問。

的基本過程可能是如下:

  1. 檢查第三方域,在那裏你可以得到模板字符串的API。
  2. 使用$http.get(或$resource,取決於您的選擇)來獲取模板。
  3. $http服務和解析登錄包裝到新的Angular服務中。 (如angular.module('yourApp', []).factory();
  4. 注入該服務到你在你的指令結合的角度控制器。
  5. 在你的視圖文件,使用ng-include在控制器來訪問模板。