从 redux-devtools 更改值后选择框未更改 [英] Select box not changing after changing the value from redux-devtools

查看:55
本文介绍了从 redux-devtools 更改值后选择框未更改的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

语言环境处于我的 redux 应用程序状态.通过 react-devtools(还原选项)更改其值,会更改段落内部值,但不会更改选择框值.如果它再次呈现,它不应该采用与 p 标签内部相同的值吗?

从react"导入 React, {Component, PropTypes}从'react-intl'导入{defineMessages,injectIntl​​,intlShape}const 消息 = 定义消息({西班牙语: {id: 'languageSelector.spanish',描述: '选择语言',defaultMessage: '西班牙语'},英语: {id: 'languageSelector.english',描述: '选择语言',默认消息:'英语'},法语: {id: 'languageSelector.french',描述: '选择语言',defaultMessage: '法语'}})类 LanguageSelector 扩展组件 {使成为 () {const {formatMessage, locale} = this.props.intl返回 (<div><select defaultValue={locale} onChange={(e) =>this.handleChange(e)}><option id='es' value='es'>{formatMessage(messages.spanish)}</option><option id='fr' value='fr'>{formatMessage(messages.french)}</option><option id='en' value='en'>{formatMessage(messages.english)}</option></选择><p>{locale}</p>

)}句柄变化(e){this.props.onChange(e.target.value)}}LanguageSelector.propTypes = {国际:intlShape.isRequired,onChange: PropTypes.func.isRequired}导出默认的 injectIntl​​(LanguageSelector)

解决方案

defaultValue 更改为 value.即


                
            
发送“验证码”获取 | 15天全站免登陆