Javascript AngularJS错误:$parse:ueoe意外的表达式结束错误
我试图在我的前端使用一些AngularJS,但在从后端推送数据时一直遇到问题。我的后端是Node.js/Express/Mongoose/Mongo,带有把手模板 我试图将数组传递到Angular$scope变量中,但它不断出现以下意外的表达式结尾错误:Javascript AngularJS错误:$parse:ueoe意外的表达式结束错误,javascript,angularjs,node.js,handlebars.js,Javascript,Angularjs,Node.js,Handlebars.js,我试图在我的前端使用一些AngularJS,但在从后端推送数据时一直遇到问题。我的后端是Node.js/Express/Mongoose/Mongo,带有把手模板 我试图将数组传递到Angular$scope变量中,但它不断出现以下意外的表达式结尾错误: Error: [$parse:ueoe] http://errors.angularjs.org/1.4.6/$parse/ueoe?p0=posts%3D%7B at Error (native) at http://localhost:30
Error: [$parse:ueoe] http://errors.angularjs.org/1.4.6/$parse/ueoe?p0=posts%3D%7B
at Error (native)
at http://localhost:3000/js/vendor/angular/angular.min.js:6:416
at Object.s.peekToken (http://localhost:3000/js/vendor/angular/angular.min.js:209:514)
at Object.s.object (http://localhost:3000/js/vendor/angular/angular.min.js:208:336)
at Object.s.primary (http://localhost:3000/js/vendor/angular/angular.min.js:205:503)
at Object.s.unary (http://localhost:3000/js/vendor/angular/angular.min.js:205:342)
at Object.s.multiplicative (http://localhost:3000/js/vendor/angular/angular.min.js:205:88)
at Object.s.additive (http://localhost:3000/js/vendor/angular/angular.min.js:204:430)
at Object.s.relational (http://localhost:3000/js/vendor/angular/angular.min.js:204:265)
at Object.s.equality (http://localhost:3000/js/vendor/angular/angular.min.js:204:90) <div class="container ng-scope" ng-controller="infiniteScrollCtrl" ng-init="posts={" _id":"55fb04878dabb2842d3deaeb","title":"my="" sixth="" post"}>
下面是data.posts的外观:
<div class="container" ng-controller="MyController" ng-init="posts={{{ data.posts }}}">
<div class="row" ng-repeat='post in posts'>
<div>
{[{ post.title }]};
</div>
</div>
{"_id":"55fb04878dabb2842d3deaeb","title":"My Test Post"}
任何帮助都将不胜感激 为什么在
{[{post.title}}中有[]
代码>
应该是:
<div>
{{ post.title }};
</div>
{{post.title}};
您的实际代码是否缺少容器ng init
属性上的双引号?这不是用于ng init
的ng init
是一个具有优先级的指令,这意味着它可能在其他组件期望数据可用时运行,也可能没有运行。除此之外,您还声明您将$interpolateProvider
更改为{[{}]}
,但是nginit
语句使用的是{{{}}
。查看您的错误,与您发布的实际代码相比,甚至不清楚您试图传递的是什么。这就是错误所说的代码的样子:ng init=“posts={”\u id:“55fb04878dabb2842d3deaeb”,“title:“my=”“sixth=”“post”};=”
。对我来说,这看起来像是一个无效的JSON对象,假设在这里使用ng init
是合适的。因此,我使用ng init来保存从后端传入的数据(在data.posts中)转换为$scope变量(posts),这样我就可以使用ng repeat遍历对象不是Angular,这是数据插值的Handlebar格式。是的,我同意实际JSON对象的格式看起来很奇怪,但我不知道为什么。正如我所说,data.posts中的实际对象看起来很干净。我绝对建议查看Handlebar在这里输出的内容,因为Angular绝对无法将对象作为它正在被传递。OP正在使用自定义插值。这似乎不是问题的答案。这篇文章特别描述了他们不使用正常语法的原因。
<div>
{{ post.title }};
</div>