без фактического использования его в методе рендеринга?
У меня есть компонент React, который содержит только логику, но все еще использует dispatch () из redux.Он называется F1_Start
// import F1_Start from './F1_Start'
Как мне запустить этот файл?
Я пытался
new F1_Start()
, но это не помогло.
Я в конечном итоге переведу его в простой класс JavaScript, но тогда мне все равно потребуется доступ к dispatch()
Актуальный файл
import React from 'react';
import { connect } from 'react-redux';
class F1_Start extends React.Component {
constructor(props) {
super(props);
this.fetchData();
}
fetchData = () => {
const options = {
credentials: 'include'
};
fetch("/api/items", options)
.then((response) => {
return response.json();
})
.then((results) => {
this.props.dispatch({type: 'updateBookmarks', bookmarks: results});
this.findStatus(results);
})
.catch((err) => {
this.notLoggedIn();
console.log('DEBUG: fetch /api/items error');
});
}
findStatus = (results) => {
if(results[results.length - 1].id_google){
const user = results.slice(-1);
this.loggedIn(user);
} else {
this.notLoggedIn();
}
}
notLoggedIn = () => {
window.setTimeout(() => {
// this.props.dispatch({ type: 'updateMenu', current: 'splash' });
}, 4000);
window.setTimeout(() => {
// this.props.dispatch({ type: 'toggleSideBar' });
}, 8000);
}
loggedIn = (user) => {
this.props.dispatch({ type: 'setUser', current: user[0] });
}
}
export default connect()(F1_Start);