1樓:
我理解的題意是、題主想要在元件內部的方法訪問變數。內部分方法可以是React 自己生命週期的方法,也可以是自己定義的方法。
根據題意,我按照變數型別區分,以下回答同時也是對資料管理開發的個人體會:
1.如果不加 let、 const 、var、那麼由於變數提公升,這個變數很有可能造成全域性汙染。
2.如果這個變數涉及UI變化、並且和其他元件沒有相互通訊、建議放在自己內部的state管理。
3.如果這個變數涉及UI變化、並且和其他元件有相互通訊、請用類似redux的資料管理
5、如果這個變數就在元件內部用、可以定義乙個const 、比如pm會要求某行文字只展示5項、你可以定義乙個const MAX_LEN = 5變數名全部大寫,放在 class上面方便訪問、這也是消除魔法字串的乙個方法
6、如果乙個變數只涉及邏輯層面、但不涉及UI邏輯變化,你可以掛在this上,但是請提供乙個有意義的作用域包裹它
2樓:Refector
class可以包含屬性和方法,用this沒毛病,state不就是乙個屬性嗎,引起ui變化的放到state裡,其他作為屬性
3樓:Ray Bao
常規做法不是先定義全域性state,然後在componentDidMount中給他賦值嗎
上邊說的可能不太準確
按照redux的思想是定義全域性store,然後在元件中觸發action
React中如何實現雙向資料繫結
Houfeng 可以試試 Mota,它能給 React 帶來類似 ng vue 的雙向繫結的能力 侯鋒 在 React 工程中利用 Mota 編寫物件導向的業務模型 import React from react class Hello extends Component handleInput e...
如何可以將react中的state用redux正確地託管
小郭嘉 對於react redux專案中的state,不是所有的state都必須要交給redux託管吧?不是,對於元件自身短暫的且不影響全域性的state交由元件自身state管理就好。全域性的state,元件間需要通訊的資料交由redux管理。參考Redux作者的回答 Question How t...
react中你們都是通過什麼方式實現動畫的?
提供乙個學習資源 http www.React 動畫效果實現。傳統 web 動畫的兩種方式 1.CSS3 2.JS 使用 setInterval setTimeout requestAnimationFrame 不斷地修改 DOM 的 style 屬性產生動畫效果 對應到 react 中 1.CSS...