我使用的是反应日期,我想使用主题化更改SingleDatePicker
的颜色。我已经看过文件了(https://github.com/airbnb/react-dates#theming)但我的实现不起作用。这是我的组件:
import React, { Component } from "react";
import ThemedStyleSheet from "react-with-styles/lib/ThemedStyleSheet";
import DefaultTheme from "react-dates/lib/theme/DefaultTheme";
import { SingleDatePicker } from "react-dates";
import "react-dates/initialize";
import "react-dates/lib/css/_datepicker.css";
ThemedStyleSheet.registerTheme({
reactDates: {
...DefaultTheme.reactDates,
color: {
...DefaultTheme.reactDates.color,
highlighted: {
backgroundColor: "#AE68FF",
backgroundColor_active: "#DEC2FF",
backgroundColor_hover: "#DEC2FF"
}
}
}
});
class DatePicker extends Component {
state = { focused: false };
render() {
const { date, onDateChange } = this.props;
return (
<SingleDatePicker
date={date}
onDateChange={onDateChange}
focused={this.state.focused}
onFocusChange={({ focused }) => this.setState({ focused })}
id="date-picker"
numberOfMonths={1}
showDefaultInputIcon
displayFormat="DD/MM/YYYY"
/>
);
}
}
export default DatePicker;
文档说:
请注意,如果手动注册主题,则必须注册接口。一个没有另一个就不能工作。
在他们的例子中,他们注册了Aphrodite接口:
import aphroditeInterface from 'react-with-styles-interface-aphrodite';
...
ThemedStyleSheet.registerInterface(aphroditeInterface);
我看不出你在代码中注册了接口——也许这就是问题所在。