错误:JSON解析错误:使用angular translate时,属性名称必须是字符串文字

时间:2016-04-19 01:20:54

标签: javascript angularjs json node.js

我使用nodejs&表达我的后端,Angular为我的前端。在我的网站中使用Angular翻译时,控制台会显示以下消息:

Error: JSON Parse error: Property name must be a string literal
parse@[native code]
fromJson@http://localhost:3000/angular/angular.js:1321:19
defaultHttpResponseTransform@http://localhost:3000/angular/angular.js:10393:24
http://localhost:3000/angular/angular.js:10484:14
forEach@http://localhost:3000/angular/angular.js:322:24
transformData@http://localhost:3000/angular/angular.js:10483:10
transformResponse@http://localhost:3000/angular/angular.js:11278:34
processQueue@http://localhost:3000/angular/angular.js:15961:30
http://localhost:3000/angular/angular.js:15977:39
$eval@http://localhost:3000/angular/angular.js:17229:28
$digest@http://localhost:3000/angular/angular.js:17045:36
$apply@http://localhost:3000/angular/angular.js:17337:31
done@http://localhost:3000/angular/angular.js:11572:53
completeRequest@http://localhost:3000/angular/angular.js:11778:15
requestLoaded@http://localhost:3000/angular/angular.js:11711:24

我确信引用了JSON文件中的所有属性。

这是语言环境文件:

{
  "directives.language-select.Language": "Select Language",
  "views.video-modal.Download": "Download",
  "views.video-modal.Visit": "Visit",
  "views.video-modal.Copy": "Copy",
  "views.video-modal.Close": "Close",
}
奇怪的是,当我只有

"directives.language-select.Language": "Select Language",

这一行。该网站运作良好。是什么导致了这个问题?

2 个答案:

答案 0 :(得分:7)

好的,刚出现了一个想法,我发现你不应该把','在最后一行的末尾。删除','解决了我的问题。

对于遇到此问题的人,您可以试试这个。

答案 1 :(得分:0)

当尝试从PHP服务器返回JSON时,我只是遇到了这个问题。而且事实证明JSON不允许尾随逗号。在JSON Specification

中说明