欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在React 組件中使用Echarts的示例代碼

 更新時(shí)間:2017年11月08日 09:38:48   作者:悠悠洛  
本篇文章主要介紹了在React 組件中使用Echarts的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧

在完成一個(gè)需求的時(shí)候碰到一個(gè)場(chǎng)景需要使用柱狀圖。涉及到可視化,第一反應(yīng)當(dāng)然是Echarts了。平時(shí)用js加載Echarts組件很方便,但是在React中就要費(fèi)下神了。各種連蒙帶猜實(shí)現(xiàn)了。edmo里的

這里我們要在自己搭建的react項(xiàng)目中使用ECharts,我們可以在ECharts官網(wǎng)上看到有一種方式是在 webpack 中使用 ECharts,我們需要的就是這種方法。

我們?cè)谑褂肊Charts之前要先安裝ECharts,在以往的開發(fā)模式中,我們很多使用就是把官網(wǎng)中的ECharts的核心js文件導(dǎo)入到我們的html或者是jsp等文件里面,但是在react項(xiàng)目中,我們可以直接使用node.js的npm命令安裝:

npm install echarts --save

Echarts的例子就是Echarts文檔上介紹的最簡(jiǎn)單的應(yīng)用。

render:function() {
    
  var info = 1;

    return (  
      <div className="mt15 xui-financialAnalyse-page">   
        <div className="xui-general">
          <Chart data={info} data-info={info} />
        </div>
      </div>
    )
  }

這是調(diào)用Echarts組件的地方,給里面?zhèn)髁?個(gè)屬性(data-開頭是H5定義的規(guī)范)

var Chart = React.createClass({
  getInitialState: function() {
    this.token = Store.addListener(this.onChangeData);
    return {}
  },

  componentWillMount: function() {
    var info = this.props.data; 
    //HTML5規(guī)定自定義屬性要以data-開頭,這樣的可以如下取
    console.log(this.props['data-info']) 
    Action.getInfo(info);
  },


   componentDidUpdate: function() {
     this.showChart(this.state.data)
   },

   onChangeData: function() {
    var data = Store.getData();
    this.setState({
      data: data['info']['data'] //后臺(tái)返回的數(shù)據(jù)
    });
  },

   showChart: function(dataSet){
    var myChart = echarts.init(document.getElementById('main'));

    var option = {
        title: {
        text: 'ECharts 入門示例'
      },
      color: ['#3398DB'],
      tooltip : {
        trigger: 'axis',
        axisPointer : {    
          type : 'shadow' 
        }
      },
      grid: {
        left: '3%',
        right: '4%',
        bottom: '3%',
        containLabel: true
      },
      xAxis : [
        {
          type : 'category',
          data : ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
          axisTick: {
            alignWithLabel: true
          }
        }
      ],
      yAxis : [
        {
          type : 'value'
        }
      ],
      series : [
        {
          name:'你好',
          type:'bar',
          barWidth: '60%',
          data: dataSet
        }
      ]
    };

    myChart.setOption(option);
   },

   render: function() {
    return (
       <div id="main" style={{width: 500, height:500}}></div>
    )
  }
});

上面是完整的demo Echarts組件的代碼,主要是利用了React根據(jù)不同狀態(tài)(3種狀態(tài))提供的處理函數(shù)(一共有5種)。

1、componentWillMount:在插入真實(shí)DOM之前發(fā)起Action,向后端請(qǐng)求數(shù)據(jù)。

2、onChangeStore:在數(shù)據(jù)變更的時(shí)候更新數(shù)據(jù),并在getInitialState中加入監(jiān)聽Store中數(shù)據(jù)變化的監(jiān)聽器。

3、componentDidUpdate:在數(shù)據(jù)被重新渲染之后,觸發(fā)showChart()方法繪制canvas。

4、showChart:配置Echarts,具體配置信息可以參考Echarts文檔

5、如果組件生命周期結(jié)束,那么要加上如下代碼:

  componentWillUnmount: function() {
    this.token.remove();
  },

否則會(huì)報(bào)錯(cuò): Warning: setState(...): Can only update a mounted or mounting component. This usually means you called setState() on an unmounted component. This is a no-op. Please check the code for the undefined component.

最后附上效果圖:

     

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • React中的常用Hooks分享

    React中的常用Hooks分享

    React?提供了許多常用的?Hooks,用于在函數(shù)組件中添加狀態(tài)管理、副作用處理和其他功能,本文主要介紹了其中幾個(gè)常用的,需要的可以收藏一下
    2023-07-07
  • 詳解React中共享組件邏輯的三種方式

    詳解React中共享組件邏輯的三種方式

    這篇文章主要介紹了詳解React中共享組件邏輯的三種方式,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • ReactJS實(shí)現(xiàn)表單的單選多選和反選的示例

    ReactJS實(shí)現(xiàn)表單的單選多選和反選的示例

    本篇文章主要介紹了ReactJS實(shí)現(xiàn)表單的單選多選和反選的示例,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2017-10-10
  • 詳解React的回調(diào)渲染模式

    詳解React的回調(diào)渲染模式

    這篇文章主要介紹了詳解React的回調(diào)渲染模式,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • 最新版React?Native環(huán)境搭建(親測(cè))

    最新版React?Native環(huán)境搭建(親測(cè))

    這篇文章主要介紹了最新版React?Native環(huán)境搭建,React Native的運(yùn)行需要依賴原生Android和iOS環(huán)境,因此需要分別安裝原生Android和iOS的開發(fā)環(huán)境,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • React styled components樣式組件化使用流程

    React styled components樣式組件化使用流程

    styled-components 是react的一個(gè)第三方庫(kù),一種css私有化的方式。用來(lái)實(shí)現(xiàn)CSS in JS 的方式之一。在多人協(xié)作中,css必定會(huì)出現(xiàn)命名沖突,與vue的scoped解決方案不同,react用styled-components的給類名加了隨機(jī)字符的方式實(shí)現(xiàn)了css的私有化
    2023-02-02
  • react-redux多個(gè)組件數(shù)據(jù)共享的方法

    react-redux多個(gè)組件數(shù)據(jù)共享的方法

    這篇文章主要介紹了react-redux多個(gè)組件數(shù)據(jù)共享的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-08-08
  • 淺談React之狀態(tài)(State)

    淺談React之狀態(tài)(State)

    這篇文章主要介紹了淺談React之狀態(tài)(State),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2018-09-09
  • react+antd4實(shí)現(xiàn)優(yōu)化大批量接口請(qǐng)求

    react+antd4實(shí)現(xiàn)優(yōu)化大批量接口請(qǐng)求

    這篇文章主要為大家詳細(xì)介紹了如何使用react hooks + antd4實(shí)現(xiàn)大批量接口請(qǐng)求的前端優(yōu)化,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解下
    2024-02-02
  • React中使用UEditor百度富文本的方法

    React中使用UEditor百度富文本的方法

    這篇文章主要介紹了React中使用UEditor的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2018-08-08

最新評(píng)論