ng-include抛出[$ parse:syntax]错误

时间:2016-11-24 09:30:46

标签: angularjs angularjs-ng-include

我正在尝试ng-include="'http://www.myxyzsite.com/assets/view/partial.html'"。但它会像

那样给出错误
  

语法错误:令牌':'不是第5列的主表达式   表达[http://www.myxyzsite.com/assets/view/partial.html]   开始于   [http://www.myxyzsite.com/assets/view/partial.html]

是否可以将ng-include与绝对路径一起使用?

有人知道,我做错了吗?

3 个答案:

答案 0 :(得分:2)

您可以使用update msg model = case msg of NoOp -> model ! [] Scroll pos -> -- do something with it 对象将实时数据放入其中,然后使用$templateCache

ng-include

使用// read page using get $http.get('link-to-page', {cache:$templateCache}); 指令

后,您可以使用此数据
ng-include

答案 1 :(得分:0)

您不能将引用包含在ng-include中,因为它不是Angular内置的。

但是你可以创建自己的指令来做到这一点。你应该做的就是发送http request到提供的url(假设网址引用的服务器正在实施 CORS

您可以在controller内制作服务并在初始化时获取内容。

<强>更新

包含跨域名

默认情况下,您不能包含跨域文件,但可以包含其他域中的文件。

在网络应用的config功能中添加合法文件和/或域名的白名单:

<body ng-app="yourApp">

<div ng-include="'http://www.website.no/angular_include.asp'"></div>

<script>
var app = angular.module('yourApp', [])
app.config(function($sceDelegateProvider) {
    $sceDelegateProvider.resourceUrlWhitelist([
        'http://www.website.no/**'
    ]);
});
</script>

</body>

Please, read this article.

答案 2 :(得分:-1)

请从您的网址中避免“http://www.myxyzsite.com/assets/view/”只放置partial.html并运行它,如果它不起作用,请转到控制台并转到网络部分然后在左侧您可以看到所有资源(页面)包括“partial.html”并选择该资源和右侧,您可以看到请求的URL链接,然后您可以看到路径并根据此在代码中调整您的URL。