好吧,我正在开发一个带离子框架的移动应用程序。在我的一个视图中,用户可以编辑您的名称,密码及其图像。为此我使用CordovaFileTransfer插件,它对我很有用。我正在设法改变图像和我需要的所有数据。但是,甚至不想更改数据库中的数据,更新应用程序。让我解释一下。
当用户更改其图像或数据时,如果成功进行了更改,则Web服务响应将返回“状态1”,并且图像的URL和新名称也会更改。我们在我的应用程序中有localStorage变量和$ rootScope,一旦从我的服务器收到状态1,就会更新但是要返回到我的未更新的仪表板应用程序,我关闭并再次打开应用程序并反映更改。作为一种方法,也许我的问题是非常基本的,但这适用于不止一个人。
JSON WEBSERVICE RESPONSE:
Object {status: 1, photo: "www.google.cl/de5a0cc049d0f3c394befb83d2cb44e3.jpg", name: "Test"}
代码控制器angularjs
$cordovaFileTransfer.upload(encodeURI(server),image,ftOptions,true)
.then(function(result) {
var respuestaJSON = jQuery.parseJSON(result.response);
if(respuestaJSON.status == 1){
sessionService.set("user",respuestaJSON.name);
sessionService.set("photo", respuestaJSON.photo);
$rootScope.username = sessionService.get("user");
$rootScope.photo = sessionService.get("photo");
sessionService:
.factory('sessionService',['$http',function($http){
return {
set:function(key,value){
return localStorage.setItem(key,JSON.stringify(value));
},
get:function(key){
return JSON.parse(localStorage.getItem(key));
},
destroy:function(key){
return localStorage.removeItem(key);
},
};
}])
HTML CODE:
<div id="dashboard-header">
<center>
<div id="home-avatar" style="background-image:url('{{photo}}')"></div>
</center>
</div>