Skip to content

Commit 314ef06

Browse files
authored
fix(ThemeProvider): fix themeProvider bug when change theme
close #79
1 parent 80cd35e commit 314ef06

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

src/components/ThemeProvider/ThemeProvider.jsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ class ThemeProvider extends Component {
1010
constructor(props) {
1111
super(props);
1212
const theme = this.getMergedTheme(props.theme);
13+
this.cache = JSON.stringify(theme);
1314
this.state = {
1415
theme
1516
};
@@ -19,13 +20,13 @@ class ThemeProvider extends Component {
1920
theme: PropTypes.object.isRequired
2021
};
2122
getMergedTheme = theme => {
22-
this.cache = JSON.stringify(theme);
2323
return generateTheme(theme);
2424
};
2525
componentWillReceiveProps(nextProps) {
2626
const { theme } = nextProps;
27-
const mergedTheme = this.getMergedTheme(theme);
2827
if (JSON.stringify(theme) !== this.cache) {
28+
const mergedTheme = this.getMergedTheme(theme);
29+
this.cache = JSON.stringify(theme);
2930
this.setState({
3031
theme: mergedTheme
3132
});

0 commit comments

Comments
 (0)