javascript - 保存在react組件中的localStorage會隨著組件的更新而更新嗎?
問題描述
react組件中保存了localStorage的pagecount1的值點擊后會改變是正常的嗎?請大神分析一下。
源碼如下:
import React, { Component } from ’react’import ReactDom from ’react-dom’import Style from ’./main.css’export default class LikeButton extends Component { constructor() { super(); this.state = { liked: false }; } handleClick() { this.setState({liked: !this.state.liked}); } render() { const text = this.state.liked ? ’liked’ : ’haven’t liked’; const style = this.state.liked ? { background: ’#8aa’} : {}; localStorage.pagecount1 = localStorage.pagecount1 ? Number(localStorage.pagecount1) + 1 : 1; return ( <p className={Style.box}><p style={style} className={Style.btn} onClick={this.handleClick.bind(this)} title={’Click to toggle’}> You {text} button.</p><p> '訪問頁面次數:{localStorage.pagecount1}次'</p> </p> ); }}
問題解答
回答1:首先你這個不是訪問頁面次數, 是組件渲染的次數.其次localStorage是存入了本地, 與組件已經無關了(賦值有關), 組件銷毀關閉瀏覽器都沒關系, 只要不清瀏覽器的瀏覽數據, 就永遠存在.
傳送門 : localStorage使用
相關文章:
1. vim里的高亮javascript的javascript.vim 已經放到syntax里了,但是不行。2. angular.js - ng-file-upload 如何實現多圖片上傳3. android - xml的drawable作背景,是否會產生錯誤4. python - pip install出現下面圖中的報錯 什么原因?5. 我何時應該在Java中使用JFrame.add(component)和JFrame.getContentPane()。add(component)6. angular.js - angularJs ngRoute怎么在路由傳遞空字符串及用ng-switch取得7. 輸入地址報以下截圖錯誤,怎么辦?8. node.js - node中MYSQL的異步問題9. javascript - 求助一個關于indexedDB的問題10. javascript - ie11以下單擊打開不了file,雙擊可以。求解?
