Reactjs 使用redux应用程序访问React native中的状态时出现问题
所以我是新来的Reactjs 使用redux应用程序访问React native中的状态时出现问题,reactjs,react-native,redux,redux-thunk,Reactjs,React Native,Redux,Redux Thunk,所以我是新来的Redux,访问状态时遇到问题。当我将constructor()方法添加到我的组件(欢迎)中时,我得到一个找不到模块/Welcome错误。我将在下面粘贴我的代码,因为我真的很挣扎 我只是想打印出文本状态 Components/Welcome/index.jsx routes.jsx: configStore.jsx: React.createClass()需要对象而不是函数 如果使用的是createClass(),则要设置初始状态,请使用getInitialState const
Redux
,访问状态时遇到问题。当我将constructor()
方法添加到我的组件(欢迎)
中时,我得到一个找不到模块/Welcome
错误。我将在下面粘贴我的代码,因为我真的很挣扎
我只是想打印出文本状态
Components/Welcome/index.jsx
routes.jsx:
configStore.jsx:
React.createClass()
需要对象而不是函数
如果使用的是createClass()
,则要设置初始状态,请使用getInitialState
const Welcome = React.createClass({
getInitialState: function () {
return { myState: 1 };
},
render: function () {}
});
如果您想使用ES6类,那么同样的情况如下
class Welcome extends React.Component {
constructor() {
super();
this.state = { myState: 1 };
}
render() {
}
}
太棒了,我想知道如何从组件内部的reducer访问状态={text:“testssters”,}
?如果您使用的是本地组件状态,您只需将其引用到this.state.text
,如果您使用的是Redux状态,你必须使用this.props.text
,然后让Redux通过提供商将其注入到你的道具中,然后connect
。我不想让你感到痛苦,但你能做个样本吗?我一直很难做到这一点/这里的链接将帮助你很多!我什么都试过了!我无法将
中的存储传递给我的欢迎组件。考虑到我上面的代码,你知道我该怎么做吗?很抱歉再次打扰你!!
import Immutable from 'immutable';
import { BAR } from 'constants/ActionTypes';
const initialState = Immutable.fromJS({
text: "hi"
});
export default function bar(state = {
text: "testssters",
}, action)
{
switch(action.type) {
case BAR:
state = state;
break;
}
return state;
}
const routes = {};
/**
* Homepage
*
*/
// Shows the homepage (Welcome/index.js)
routes.getHomeRoute = () => ({
getSceneClass() {
return require('Welcome/').default;
},
getTitle() {
return 'Welcome';
}
});
import { createStore, combineReducers, applyMiddleware, compose } from 'redux';
import thunk from 'redux-thunk';
import * as reducers from 'reducers/';
const createStoreWithMiddleware = compose(
applyMiddleware(thunk)
// Add remote-redux-devtools
)(createStore);
export default function configureStore() {
return createStoreWithMiddleware(combineReducers(reducers));
}
const Welcome = React.createClass({
getInitialState: function () {
return { myState: 1 };
},
render: function () {}
});
class Welcome extends React.Component {
constructor() {
super();
this.state = { myState: 1 };
}
render() {
}
}