Evi*_*key 6 javascript angularjs angularjs-ng-include angularjs-templates angularjs-ng-template
我有一个视图正在加载嵌入式文件后面text/ng-template没有找到ng-include.脚本块位于视图文件的最顶部:
<script type="text/ng-template" id="stringCondition">
<!-- template guts -->
</script>
Run Code Online (Sandbox Code Playgroud)
我将在以后的文件中加载:
<ng-include src="'stringCondition'"></ng-include>
Run Code Online (Sandbox Code Playgroud)
但是在控制台中产生404错误:
GET http://localhost/~me/stringCondition 404 (Not Found)
Run Code Online (Sandbox Code Playgroud)
我已经在命名上尝试了几种变体(比如最后有.html)并使用ng-include作为属性而不是高级元素.一切都没有运气.
什么可能导致嵌入式ng-template无法ng-include在同一个视图文件中注册?
更新:
正如评论和答案所指出的那样,我的代码的基本设计是正确的.但是某些事情导致ng-template(显然)无法使模板可用于系统.
我更新了我的代码以从HTML文件(而不是嵌入的模板)中提取,它工作正常.
是否有一种常见的情况,我可能会遇到这种休息ng-template?
小智 15
<div ng-app>
<script type="text/ng-template" id="stringCondition">
Yes, yes it did.
</script>
Did it work? <ng-include src="'stringCondition'"></ng-include>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>Run Code Online (Sandbox Code Playgroud)
我有同样的问题,并发现了这篇文章.我现在可以看到是什么导致了这个问题,所以希望这可以帮助其他人解决这个问题.
rgthree代码工作的原因是text/ng-template的脚本标记必须存在于ng-app的范围内.所以将模板放在一个单独的.js文件中是很好的,但只要确保它在HTML页面上呈现它在ng-app中,否则angular将不会意识到它并将尝试从服务器.
似乎对我来说效果很好。也许您的示例代码之外还有其他事情发生。
<div ng-app>
<script type="text/ng-template" id="stringCondition">
Yes, yes it did.
</script>
Did it work? <ng-include src="'stringCondition'"></ng-include>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6405 次 |
| 最近记录: |