【发布时间】:2016-02-11 12:54:41
【问题描述】:
我正在开发一个离子项目,并尝试通过从服务发送的承诺从本地读取 JSON 文件,最后注入控制器。但是,我收到错误 SyntaxError: Unexpected token J,其中 J 始终是我的 JSON 文件中的第一个字符。
有人有想法吗??非常感谢!!!
我在 app.js
中有一条路线.config(function($stateProvider, $urlRouterProvider) {
$stateProvider
.state('home', {
url: '/',
templateUrl: 'templates/home.html',
controller: 'MainCtrl as vm',
resolve: {
weather: function(MyService) {
return MyService.getData();
}
});
$urlRouterProvider.otherwise('/');
});
我的services.js在这里
.factory('MyService', function($http) {
var base_url = "http://localhost:8100/";
function getData() {
return $http.get(base_url+'data/pt_br/mydata.json?callback=JSON_CALLBACK')
.then(
function(res) {
return res;
},
function(err) {
return err;
}
)
}
return { getData: getData() }
});
这是我的控制器
.controller('MainCtrl', function(weather) {
var vm = this;
vm.weather = weather;
});
最后,我的 json 文件:
JSON_CALLBACK ({
'Introduction': 'Welcome to my site!',
'texts' : [
'text1': 'hello',
'text2': 'world'
]
});
【问题讨论】:
-
我猜 JSON 需要双引号而不是单引号。另外
SyntaxError: Unexpected token J表示字符串以J开头 -
我已经尝试过使用双引号,Rajesh,但不起作用。谢谢。
标签: javascript angularjs json rest ionic-framework