午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術文章
文章詳情頁

javascript - Reactjs關于函數內跳轉 this.context.router.push(path)的問題

瀏覽:213日期:2023-02-17 10:31:11

問題描述

請教各位師兄了。我創建了一個組件Component,并在內部中的一個ajax成功回調內,寫了this.context.router.push('/user/list')類似的跳轉功能。同時在組件外寫了Component.contextTypes={ router: React.PropTypes.object.isRequired }。ajax也成功請求了,但是頁面并沒有跳轉,有點疑問了。。。代碼結構類似:

class Component extends React.Component{ ... success: function(data) {alert(data);this.context.router.push(...) }}Component.contextTypes={ router: React.PropTypes.object.isRequired}

問題解答

回答1:

是不是拿不到this?. 試試用 success()->()

回答2:

這里寫一下在網上查找答案時遇到的坑,同時也是為了告訴后來遇到同樣或者相似問題的小白吧,還請相關帖子管理人員別刪:在 Component.contextTypes這兒,我查到過有人把它以這種方式寫到過組件內部:

class Component extends React.Component{ [有些人寫static有些人又不寫static] contentTypes: {router: React.PropTypes.object.isRequired } ... this.context.router.push(...)}

然而這么做我這兒始終出問題,就是報錯 Cann’t read the property ’push’ is not defined。不太明顯為啥呢,先記下來再說吧

回答3:

'Cann’t read the property ’push’ is not defined'這個錯誤確保contextTypes寫好了并且構造函數調用super是沒有把context弄丟

class Component { constructor(props, context) { super(...arguments) // 這樣才行,如果只寫props, 會把context 弄丟,所以super時始終建議這么寫 }}

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 丰满白嫩尤物一区二区 | 黄久久久 | 欧美色视频在线观看 | 99热18| 狠狠干男人的天堂 | 亚洲免费中文字幕 | 中文字幕一区二区三区四区不卡 | 国产特级淫片免费看 | 99精品视频在线免费观看 | 一级全黄少妇性色生活片 | 成人看片黄a免费看视频 | 97午夜视频| 日韩久久中文字幕 | 欧美成人精品激情在线观看 | 午夜免费福利视频 | 一区二区黄色 | 国产成人av一区二区三区 | 天天综合色网 | 日本免费黄色小视频 | 欧美成人精品欧美一级私黄 | 亚洲少妇激情 | 日韩视频久久 | 国产免费黄 | av网站播放| 男操女免费视频 | 宅男噜噜噜66一区二区 | 午夜视频在线 | 国产第100页 | 欧美xxx视频| 在线观看a视频 | 我要看免费的毛片 | 欧美黄色a | 五月天综合网站 | 华人永久免费 | 可以在线观看的av网站 | 一级片免费在线观看 | 国产精品久久久久无码av | 亚洲欧美日韩综合在线 | 精品视频区 | 黄色一级在线 | 日韩一级片在线观看 |