react中modal不生效的解決辦法:1、將“main.jsx”文件中的“
”去掉;2、在使用modal組件的地方,給Modal添加兩個屬性“transitionName="" maskTransitionName=""”;3、升級“ant-design”即可。
本教程操作環境:Windows10系統、react18.0.0版、Dell G3電腦。
react中modal不生效怎么辦?
react中使用ant組件庫的modal彈窗報錯
解決在react項目中使用ant-design庫中的modal彈窗控制臺報錯問題
findDOMNode is deprecated in StrictMode. findDOMNode was passed an instance of DomWrapper3 which is inside StrictMode.
登錄后復制
問題根因:
react腳手架中開啟了嚴格模式,限制代碼書寫規范。在ant-design組件庫中使用了CSSTransition,但是CSSTransition中的部分代碼的寫法對于react而言,不是最新的寫法,不是非常規范
的寫法,所以嚴格模式下的react就會拋出警告。從而導致彈窗無法使用
解決方案:
1.關閉react的嚴格模式
將main.jsx文件中的<React.StrictMode>去掉。但在開發項目中,React.StrictMode這個標簽做代碼校驗功能還是比較重要的,最好不要關閉。此方法不推薦使用。而且在新版本的react中,去掉該嚴格模式,也會有一些其他問題。
2.不使用ant-design中的CSSTransition效果
既在使用modal組件的地方,給Modal添加兩個屬性
transitionName="" maskTransitionName=""
<Modal title="Basic Modal" transitionName="" maskTransitionName="" visible={isModalVisible} onOk={this.handleOk} onCancel={this.handleCancel}> <p>確定刪除該代辦任務嗎?</p> </Modal>
登錄后復制
3.可以等ant-design升級解決這個問題
推薦學習:《react視頻教程》