我试图在没有参数的情况下更新网址是否可能?在我的应用程序上我创建了状态
.state('webPrint', {
url: '/web/print/:lead',
templateUrl: '/application/views/web-print.html'
})
当我重定向我传递一个对象时
var obj = JSON.stringify(lead);
$state.go('webPrint', { lead: obj });
但我的网址应该是
/web
到/web/print
,但它显示/web/print + "stringify object data"
所以我将代码更改为
$state.go('webPrint', { lead: obj }, { location: false, inherit: false });
但现在它根本没有改变网址。我的意思是/web
到/web
如何避免在url上使用stringify字符串并将其直接传递给新网址?
谢谢
答案 0 :(得分:0)
您正在使用选项location: false
,这意味着您要告知不要更改网址。
我想说用getter和setter创建一个服务来保存和检索你的数据,如下所示
angular.module('app.service').factory('leadService', function(){
var lead = {};
return{
getLead : function(){
return lead;
},
setLead: function(data){
lead = data;
}
}
});
.state('webPrint', {
url: '/web/print',
templateUrl: '/application/views/web-print.html'
})
var obj = JSON.stringify(lead);
leadService.setLead(obj);
$state.go('webPrint');
然后在您的控制器中使用
获取主要对象var lead = leadService.getLead();