【发布时间】:2017-09-17 05:14:01
【问题描述】:
我想将 Json 文件放入 cookie 中并以 html 显示但不起作用。这是我的代码
服务
.factory('dataServices',dataServices);
function dataServices(){
var cart =[];
var services = {
cart : cart,
addCart : addCart
}
return services
function addCart(tensp,gia,img,sl){
cart.push({tensp:tensp,gia:gia,img:img,sl:sl})
}
}
在js中
function shopController(dataServices,$cookies){
var vm=this;
vm.cart = dataServices.cart;
vm.cookies = $cookies.getObject('cart'); // when I add it have error
vm.add = function(tensp,gia,img){
dataServices.addCart(tensp,gia,img,1);
$cookies.putObject('cart',vm.cart);
console.log($cookies.getObject('cart'))
}
}
HTML
<button class="btn btn-primary"
ng-click="vm.add(data.tensp,data.gia,data.img)">
Add to Cart</button>
这是console.log中的数据显示
[{"tensp":"CPU INTEL CORE I5","gia":"400","img":"item14.jpg","sl":1}]
但是当我尝试写:vm.cookies = $cookies.getObject('cart');
有错误
控制台中位置 0 处 JSON 中的意外令牌 v
【问题讨论】:
-
你在 console.log($cookies.get('cart')) 行上得到了什么结果?
-
@ImmanuelKirubaharanS 这是我编辑的 getObject,我得到的数据有问题
-
你能打开开发者工具->应用程序->cookies->yourdomain.com 并截取其中包含的内容吗?
-
您能否在将结果分配给 vm.cookies 时尝试解析结果。就像 vm.cookies = JSON.parse($cookies.getObject('cart'));
-
@Leguest 我加了。你能告诉我哪里错了吗