ionic 使用 $cordovaFile 读取本地 json 文件
ionic read a local json file with $cordovaFile
我正在尝试加载这样存储的本地 json 文件:
www/json/config.json
var path = '/android_asset/www/json'; //<-i have tried lots of differnt path's without success
var fileName = "config.json";
console.log('url: '+path+fileName);
console.log('file there?: '+angular.toJson($cordovaFile.checkFile(path, fileName)) );
$cordovaFile.readAsText(path, fileName).then(function (success) {
console.log('read success: '+angular.toJson(success));
}, function (error) {
console.log('read error: '+angular.toJson(error));
});
我将 ionic 与 ngCordova 插件 $cordovaFile 一起使用...有人有什么建议吗?
我只想在我的应用程序中加载 "default" json...
您无法使用 $cordovaFile
和该路径读取 www
文件夹中的文件,$cordovaFile
通过 file://
协议访问该文件。
因为默认 json 文件位于 www
文件夹中。以下是一些方法:
复制所有 JSON 内容并将其放入 javascript 文件中,并作为全局变量访问该文件。 (必须将此文件包含到 index.html
)
var json = {myKey: "myValue"};
使用 $resource
作为服务(未测试):
$resource('file:///android_asset/www/json/myJson.json', {}, {
query: { method: 'GET', params: {}, isArray: true }
})
在您的控制器中使用 $http
:
$http.get('json/myJson.json')
.success(function (data) {
// The json data will now be in scope.
$scope.myJsonData = data;
});
我正在尝试加载这样存储的本地 json 文件:
www/json/config.json
var path = '/android_asset/www/json'; //<-i have tried lots of differnt path's without success
var fileName = "config.json";
console.log('url: '+path+fileName);
console.log('file there?: '+angular.toJson($cordovaFile.checkFile(path, fileName)) );
$cordovaFile.readAsText(path, fileName).then(function (success) {
console.log('read success: '+angular.toJson(success));
}, function (error) {
console.log('read error: '+angular.toJson(error));
});
我将 ionic 与 ngCordova 插件 $cordovaFile 一起使用...有人有什么建议吗? 我只想在我的应用程序中加载 "default" json...
您无法使用 $cordovaFile
和该路径读取 www
文件夹中的文件,$cordovaFile
通过 file://
协议访问该文件。
因为默认 json 文件位于 www
文件夹中。以下是一些方法:
复制所有 JSON 内容并将其放入 javascript 文件中,并作为全局变量访问该文件。 (必须将此文件包含到
index.html
)var json = {myKey: "myValue"};
使用
$resource
作为服务(未测试):$resource('file:///android_asset/www/json/myJson.json', {}, { query: { method: 'GET', params: {}, isArray: true } })
在您的控制器中使用
$http
:$http.get('json/myJson.json') .success(function (data) { // The json data will now be in scope. $scope.myJsonData = data; });