feat: fully working hot reload for weather and search

This commit is contained in:
David Ralph
2021-04-14 16:18:01 +01:00
parent 6137139586
commit ca2ce43f2f
6 changed files with 8 additions and 18 deletions

View File

@@ -83,7 +83,7 @@ export default class OrderSettings extends React.PureComponent {
componentDidUpdate() {
localStorage.setItem('order', JSON.stringify(this.state.items));
EventBus.dispatch('refresh', 'order');
EventBus.dispatch('refresh', 'widgets');
}
render() {

View File

@@ -74,7 +74,7 @@ export default class SearchSettings extends React.PureComponent {
return (
<>
<h2>{search.title}</h2>
<Switch name='searchBar' text={language.enabled} category='search' />
<Switch name='searchBar' text={language.enabled} category='widgets' />
{isChrome ? <Checkbox name='voiceSearch' text={search.voice_search} /> : null}
<Dropdown label={search.search_engine} name='searchEngine' onChange={(value) => this.setSearchEngine(value)}>

View File

@@ -38,7 +38,7 @@ export default class TimeSettings extends React.PureComponent {
return (
<>
<h2>{language.title}</h2>
<Switch name='weatherEnabled' text={this.language.enabled} category='weather'/>
<Switch name='weatherEnabled' text={this.language.enabled} category='widgets'/>
<ul>
<p>{language.location}</p>
<input type='text' value={this.state.location} onChange={(e) => this.setState({ location: e.target.value })}></input>

View File

@@ -34,7 +34,7 @@ export default class Widgets extends React.PureComponent {
componentDidMount() {
EventBus.on('refresh', (data) => {
if (data === 'order') {
if (data === 'widgets') {
this.setState({
order: JSON.parse(localStorage.getItem('order'))
});

View File

@@ -75,13 +75,6 @@ export default class Search extends React.PureComponent {
componentDidMount() {
EventBus.on('refresh', (data) => {
if (data === 'search') {
const element = document.querySelector('.searchBar');
if (localStorage.getItem('searchBar') === 'false') {
return element.style.display = 'none';
}
element.style.display = 'block';
this.init();
}
});

View File

@@ -89,13 +89,6 @@ export default class Weather extends React.PureComponent {
componentDidMount() {
EventBus.on('refresh', (data) => {
if (data === 'weather') {
const element = document.querySelector('.weather');
if (localStorage.getItem('weatherEnabled') === 'false') {
return element.style.display = 'none';
}
element.style.display = 'block';
this.getWeather();
}
});
@@ -103,6 +96,10 @@ export default class Weather extends React.PureComponent {
this.getWeather();
}
componentWillUnmount() {
EventBus.remove('refresh');
}
render() {
const enabled = (setting) => {
return (localStorage.getItem(setting) === 'true');