我的HTML:
<div ng-hide="token">
Test
</div>
在我的控制器中:
$scope.token = localStorage.key;
但它总是返回false(?) - 它不起作用。
如果我尝试这样做:
<div ng-hide="token()">
Test
</div>
在控制器中:
$scope.token = function(){
return localStorage.key;
}
它; s也不起作用。
为什么?
我该怎么做?
感谢
答案 0 :(得分:4)
您没有正确使用localStorage。正确的方法是:
if ( is_page_template ( 'page-book.php' ) )
{ $currenturl=$_SERVER['REQUEST_URI'];
$booktitle = str_replace("http://mybooks.com/books/", "", $currenturl);
$booktitle = str_replace("-", " ", $booktitle);
$booktitle = strtoupper($booktitle);
echo $booktitle;
}
同样,您可以$scope.token = localStorage.getItem(key);
放入内容,setItem
稍后将其删除。
有关localStorage的完整文档:https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage
答案 1 :(得分:0)
localStorage是一个键/值数组。
您可以使用:
window.localStorage.getItem('key');
window.localStorage.setItem('key', 'value');
window.localStorage.removeItem('key');
window.localStorage.length;
window.localStorage.key(n);
如果您需要在控制台中查看所需的值,请尝试使用此功能:
for (var key in localStorage){
console.log(key)
}
如果您尝试为令牌分配默认值,但它仍然无法正常工作,则可能是范围问题。
见:
答案 2 :(得分:0)
解决方案是这样的:
$scope.token = function(){
return localStorage.getItem('key');
}
这是所有其他选项的演示: