最近在用Angular js项目中遇到一个情况:在user页面点击“购买之后”,携带购买ID跳转到“购买页面”,在购买页面购买之后,购买成功了就在user页面显示“已购买”,购买失败了在use页面还是显示“购买”。
所以就需要缓存是“是否购买”的标签,可使用HTML5的localStorage特性,eg:
- 在购买页面得到购买ID之后,存入localStorage:
$scope.appID=“购买ID”;
$scope.buyThisApp=function () {
$scope.buy=true;//购买成功标识符
if(!window.localStorage){
alert("浏览器不支持localstorage");
}else{
localStorage.clear();
var storage=window.localStorage;
storage.setItem("isBuy",$scope.appID);//将购买ID存入localStorage中的变量isBuy
// console.log(storage.data);
}
- 再返回user页面,就需要拿到localStorage中的isBuy参数来判断该ID的应用是否购买:
$scope.Buy = localStorage.getItem("isBuy");
//后面就是根据此参数进行逻辑判断