2 回答
TA贡献1111条经验 获得超0个赞
您需要使用moment-with-locale-es6模块作为名称所说的语言环境......普通模块只有英文
如果没有任何代码示例,很难找出这里出了什么问题。
我正在使用一个辅助函数moment从我的i18n模块返回一个具有当前语言环境设置的新对象,它的工作原理就像魅力一样。
也许它有帮助。这是我的帮手。
import moment from 'moment-with-locales-es6';
import i18n from './i18n';
const momentWithLocale = (...args) => {
moment.locale(i18n.locale);
return moment(...args);
};
export default momentWithLocale;
TA贡献1853条经验 获得超18个赞
class DateRangeWrapper extends React.PureComponent {
render() {
const {
startDate,
endDate,
onDatesChange,
focusedInput,
onFocusChange,
windowStyle,
rangeSelect,
blockpastDates,
displayFormat,
localelang,
startDatePlaceholderText,
endDatePlaceholderText,
} = this.props;
**moment.locale(`${localelang}`);**
return (
<div className="CalendarComponent">
<div
className={
windowStyle === 'Popup'
? windowStyle
: classnames(windowStyle, 'inlineHeight')
}
>
<DateRangePicker
{...rangeConfig}
startDate={rangeSelect === 'fromPresent' ? moment() : startDate}
endDate={endDate}
onDatesChange={onDatesChange}
focusedInput={focusedInput}
onFocusChange={onFocusChange}
customArrowIcon={<ArrowIcon />}
navPrev={<CalendarNavIcon direction="prev" />}
navNext={<CalendarNavIcon direction="next" />}
isOutsideRange={
blockpastDates ? day => moment().diff(day) > 0 : () => false
}
renderCalendarInfo={
windowStyle === 'Popup'
? () => (
<Controls
applyText={this.props.applyText}
cancelText={this.props.cancelText}
onDatePickerApply={this.props.onDatePickerApply}
onDatePickerClose={this.props.onDatePickerClose}
/>
)
: () => {}
}
displayFormat={displayFormat}
startDatePlaceholderText={startDatePlaceholderText}
endDatePlaceholderText={endDatePlaceholderText}
/>
</div>
</div>
);
}
}
localelang 是一个属性,其值为 i18next.language 从使用此日期组件的组件传递
添加回答
举报