在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/C  HTML/ react中異步加載想提出一共公共的方法,但是一直顯示無定義

react中異步加載想提出一共公共的方法,但是一直顯示無定義

import React from 'react'

class ContainerCommon extends React.Component {

    constructor() {
        super();
        //localStorage.username='再見';

    }

    start() {
        console.log('終于開始了')
    }

    _initKeyDown() {
        require.ensure([], (require) => {

            var $ = require('jquery')

            $(document).ready(function() {

                start()
                /**
                 * 停止輪播
                 */
                function stop() {
                    clearInterval(interval_id);
                    hasStarted = false;
                }
            })

        },'CarouselScreenShortUp1')

    }

    _init() {

        var interval_id = 0;
        require.ensure([], (require) => {
            //require('../../lib/jquery.flexslider');
            //var $ = require('jquery') + require('../../lib/jquery.flexslider');
            var $ = require('jquery')

            $(document).ready(function() {
                var length = 0,
                    currentIndex = 0,
                    hasStarted = false, //是否已經(jīng)開始輪播
                    t = 3000; //輪播時間間隔


                start()

                /**
                 * 停止輪播
                 */
                function stop() {
                    clearInterval(interval_id);
                    hasStarted = false;
                }
            })

        },'CarouselScreenJqueryShortUp2')

    }

    componentDidMount() {

        // 初始化圖片地址
        console.log('初始化第一')
        this._init()

        console.log('第二初始化')
        this._initKeyDown()
    }

    render() {

        return (
            <div>

            </div>
        )
    }
}



export default ContainerCommon;

圖片描述

回答
編輯回答
耍太極

React.Component是以ES6的形式來創(chuàng)建react的組件的,是React目前極為推薦的創(chuàng)建有狀態(tài)組件的方式,最終會取代React.createClass形式。

React.createClass與React.Component區(qū)別有一條就是函數(shù)this自綁定:
React.createClass創(chuàng)建的組件,其每一個成員函數(shù)的this都有React自動綁定,任何時候使用,直接使用this.method即可,函數(shù)中的this會被正確設(shè)置。

2018年8月22日 13:39
編輯回答
尋仙

你寫在類里面的方法,在類里面應(yīng)該通過this.fn()調(diào)用

2017年10月9日 11:27
編輯回答
念初

你這樣怎么能調(diào)得到?應(yīng)該是this.start()呀

 _initKeyDown() {
    var that= this;
        require.ensure([], (require) => {
            
            var $ = require('jquery')

            $(document).ready(function() {

                that.start()
                /**
                 * 停止輪播
                 */
                function stop() {
                    clearInterval(interval_id);
                    hasStarted = false;
                }
            })

        },'CarouselScreenShortUp1')

    }

或者start改成靜態(tài)方法

static start() {
               
 }
let aaa = class ContainerCommon extends React.Component... 

用aaa.start()調(diào)用

2018年5月3日 17:25