AngularJS 教程
本章節(jié)介紹了 AngularJS Include(包含) 的知識(shí),你將學(xué)習(xí)如何使用 ng-include 指令。
在 AngularJS 中,你可以在 HTML 中包含 HTML 文件。
在 HTML 中,目前還不支持包含 HTML 文件的功能。
大多服務(wù)端腳本都支持包含文件功能 (SSI: Server Side Includes)。
使用 SSI, 你可在 HTML 中包含 HTML 文件,并發(fā)送到客戶端瀏覽器。
通過(guò) JavaScript 有很多種方式可以在 HTML 中包含 HTML 文件。
通常我們使用 http 請(qǐng)求 (AJAX) 從服務(wù)端獲取數(shù)據(jù),返回的數(shù)據(jù)我們可以通過(guò) 使用 innerHTML 寫入到 HTML 元素中。
使用 AngularJS, 你可以使用 ng-include 指令來(lái)包含 HTML 內(nèi)容:
步驟如下:
ng-include 指令除了可以包含 HTML 文件外,還可以包含 AngularJS 代碼:
包含的文件 "sites.htm" 中有 AngularJS 代碼,它將被正常執(zhí)行:
默認(rèn)情況下, ng-include 指令不允許包含其他域名的文件。
如果你需要包含其他域名的文件,你需要設(shè)置域名訪問(wèn)白名單:
此外,你還需要設(shè)置服務(wù)端允許跨域訪問(wèn),設(shè)置方法可參考:PHP Ajax 跨域問(wèn)題最佳解決方案。