2015-04-06 65 views
2

所以我用下面的标签AngularJS包括:AngularJS NG-包括不会出于某种原因

<div data-ng-include src="'../templates/footer.html'"></div> 

页脚文件模板目录中,包括下面的代码

<footer class="primary-footer"> 
<div class="copyright"><small>&copy; 2015</small></div> 
</footer> 
</body> 
</html> 

但是,当我加载页面时,页脚不加载。当我查看源代码时,它给了我一个404错误。我只是没有访问正确的目录,或者这是我的代码错了吗?

+1

检查文件路径,并与控制台日志 – Sajeetharan 2015-04-06 06:28:48

+0

你给了错误的道路相比,这是我能看到 – 2015-04-06 06:38:46

+1

你只需要唯一的问题'data-ng-include =''../ templates/footer.html'“'并且检查路径中是否需要'../'。在浏览器开发人员工具中检查网络,获取该资源的URL。 – Nilesh 2015-04-06 06:47:41

回答

3

相反的:

<div data-ng-include src="'../templates/footer.html'"></div> 

用途:

<div data-ng-include data-src="'../templates/footer.html'"></div> 
+0

这样做会有什么区别 – 2015-04-06 06:43:48

+0

正如您看到的,只需添加data-ng-include属性并使用data-src属性将其指向部分文件即可。注意视图路径中的引号,如果您没有添加,Angular会将其视为表达式并尝试对其进行评估,而不是包含模板。 – Deep 2015-04-06 06:44:55

+0

@pankajparkar正在分析的表达式。原始'src'属性不能有一个有效的值加上额外的引号 – 2015-04-06 06:45:09

2

不喜欢它 - <div data-ng-include="'../templates/footer.html'"></div> 或类似纳克模板做到这一点 - <div ng-bind-template="'../templates/footer.html'"></div> 都将解决你的问题。