react中定義變量并使用方式
react定義變量并使用
這里面涉及到了
- 1、變量如何定義
- 2、變量如何進(jìn)行改變
- 3、方法如何調(diào)用
都寫有詳細(xì)的注釋大家可詳細(xì)觀看適合剛學(xué)習(xí)react的新同學(xué)
class Packaging extends React.Component{ // react 類組件 constructor(props) { super(props); this.state = { // 進(jìn)行變量定義(會(huì)vue的同學(xué):這個(gè)地方就相當(dāng)于 data 的return里所定義的) // 例如 name:'定義name' }; this.getNameData();// 調(diào)用方法 } // 定義方法-寫這個(gè)方法是為了給大家操作一下怎么改變定義的數(shù)據(jù) getNameData() { http.get('接口名稱').then(res => { // 第一種 this.setState({ // 使用this.setState來進(jìn)行改變變量 name: res.data.name }); console.log(this.state.dataObj) // 打印不到的 // 第二種 this.setState({ name: res.data.name },() => { console.log(this.state.dataObj) // 可以打印到 }) }).catch(error => { console.error(error) }) } render() { return <div className="className">// className定義div的class名稱 {this.state.name} </div> } }
react全局變量的設(shè)置
新建一個(gè) util文件夾 ---> tool.jsx
window._= { ?? ??? ?/** ?? ??? ? * 存儲(chǔ)localStorage ?? ??? ? */ ?? ??? ?setStore:(name, content) =>{ ?? ??? ??? ?if (!name) return; ?? ??? ??? ?if (typeof content !== 'string') { ?? ??? ??? ??? ?content = JSON.stringify(content); ?? ??? ??? ?} ?? ??? ??? ?window.localStorage.setItem(name, content); ?? ??? ?}, ?? ??? ?/** ?? ??? ? * 獲取localStorage ?? ??? ? */ ?? ??? ?getStore:(name) => { ?? ??? ??? ?if (!name) return; ?? ??? ??? ?return window.localStorage.getItem(name); ?? ??? ?}, ?? ??? ?/** ?? ??? ? * 清除localStorage ?? ??? ? */ ?? ??? ?clearStore:() => { ?? ??? ??? ?window.localStorage.clear(); ?? ??? ?}, ?? ??? ? ?? ??? ?getQueryStringByName: function (name) { ?? ??? ??? ?var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); ?? ??? ??? ?var r = window.location.search.substr(1).match(reg); ?? ??? ??? ?var context = ""; ?? ??? ??? ?if (r != null) ?? ??? ??? ??? ?context = r[2]; ?? ??? ??? ?reg = null; ?? ??? ??? ?r = null; ?? ??? ??? ?return context == null || context == "" || context == "undefined" ? "" : context; ?? ??? ?} ?? ? }
在入口文件app.jsx里面引入
import ?"util/tool.jsx";
然后在其余的組件里面就可以訪問到這個(gè)變量對(duì)象:_
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Electron打包React生成桌面應(yīng)用方法詳解
這篇文章主要介紹了React+Electron快速創(chuàng)建并打包成桌面應(yīng)用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2022-12-12在?React?中如何從狀態(tài)數(shù)組中刪除一個(gè)元素
這篇文章主要介紹了在?React?中從狀態(tài)數(shù)組中刪除一個(gè)元素,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03React實(shí)現(xiàn)虛擬滾動(dòng)的三種思路詳解
在??web??開發(fā)的過程中,或多或少都會(huì)遇到大列表渲染的場(chǎng)景,為了解決大列表造成的渲染壓力,便出現(xiàn)了虛擬滾動(dòng)技術(shù),本文主要介紹虛擬滾動(dòng)的三種思路,希望對(duì)大家有所幫助2024-04-04詳解在React項(xiàng)目中如何集成和使用web worker
在復(fù)雜的React應(yīng)用中,某些計(jì)算密集型或耗時(shí)操作可能會(huì)阻塞主線程,導(dǎo)致用戶界面出現(xiàn)卡頓或響應(yīng)慢的現(xiàn)象,為了優(yōu)化用戶體驗(yàn),可以采用Web Worker來在后臺(tái)線程中執(zhí)行這些操作,本文將詳細(xì)介紹在React項(xiàng)目中如何集成和使用Web Worker來改善應(yīng)用性能,需要的朋友可以參考下2023-12-12React中useCallback useMemo使用方法快速精通
在React函數(shù)組件中,當(dāng)組件中的props發(fā)生變化時(shí),默認(rèn)情況下整個(gè)組件都會(huì)重新渲染。換句話說,如果組件中的任何值更新,整個(gè)組件將重新渲染,包括沒有更改values/props的函數(shù)/組件。在react中,我們可以通過memo,useMemo以及useCallback來防止子組件的rerender2023-02-02React-Hooks之useImperativeHandler使用介紹
這篇文章主要為大家介紹了React-Hooks之useImperativeHandler使用介紹,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07react?hooks中的useState使用要點(diǎn)
這篇文章主要為大家介紹了react?hooks中的useState使用要點(diǎn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09React性能優(yōu)化的實(shí)現(xiàn)方法詳解
react憑借virtual DOM和diff算法擁有高效的性能,除此之外也有很多其他的方法和技巧可以進(jìn)一步提升react性能,在本文中我將列舉出可有效提升react性能的幾種方法,幫助我們改進(jìn)react代碼,提升性能2023-01-01