const initialState = {
posts: [],
error: null,
isLoading: false,
}
const item = (state = initialState, action) => {
case "FETCH_DATA":
return {
...state,
isLoading: true,
error: null,
};
case "FETCH_DATA_SUCCESS":
return {
...state,
posts: action.data,
isLoading: false,
error: null,
};
/* some code */
}
const mapStateToProps = (store) =>({
posts: store.data.posts,
});
render() {
const { isLoading, posts } = this.props
return (
<div className="head">
<div>
<Head />
</div>
<div>
{!isLoading && posts.map(post => <Post key={post.id} post={post} />)}
{isLoading && <Loading />}
</div>
</div>
);
}
export const apiData = (typePage) => {
return (dispath) => {
dispatch(fetchData());
axios.get('https://jsonplaceholder.typicode.com/' + typePage)
.then(res => dispath(fetchDataSuccess(res.data)))
.catch(err => {
console.log(err)
})
}
}
hanldeSubmit = async () => {
this.setState({ isProcessing: true });
await this.submitForm();
this.setState({ isProcessing: false });
this.props.history.push('/somePath');
};
var url = 'https://api-metrika.yandex.ru/stat/v1/data?oauth_token=<мой токен>&ids=<id моего счётчика>&date1=' + date1 + '&date2=' + date2 + '&dimensions=ym%3As%3AsearchEngine&metrics=ym%3As%3Ausers&filters=ym%3As%3AstartURLPath%3D%3D' + url3 + '&limit=10000'
inject: false
и используйте свойство template. За примерами как написать шаблон прошу в Google. <SomeComponent image={require('img/someImage.jpg')} />
{
'img': './src/assets/images',
}
<SomeComponent image={require('../../../../assets/images/someImage.jpg')} />
class MyChart {
constructor() {}
update() {}
onUpdate() {}
render() {}
}
prototype.constructor
никак не использует. const Article = styled.div`
&:before {
background-image: url(${props => props.beforeImage});
}
&:after {
background-image: url(${props => props.afterImage});
}
`;
С чего вы взяли, что стейт всегда пуст? У вас вижу и логирование есть. Даже два. В логах должно быть видно как меняется состояние.
При этом, не подключен redux-dev-tools, который бы сильно упростил работу с хранилищем.
А это условие выполнится:
if (posts && posts == 'undefained')
только если вы сами эту строку в значение запишите Другими словами, в вашем текущем коде оно никогда не выполнится.