Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 哪个版本的redux/react redux与通过bower安装的react v0.14.9一起工作?_Reactjs_Redux_React Redux_Bower - Fatal编程技术网

Reactjs 哪个版本的redux/react redux与通过bower安装的react v0.14.9一起工作?

Reactjs 哪个版本的redux/react redux与通过bower安装的react v0.14.9一起工作?,reactjs,redux,react-redux,bower,Reactjs,Redux,React Redux,Bower,我正在尝试将redux添加到一个现有的sailsjs v0.12项目中,而无需更新庞大堆中的每个包。当前react内容通过bower加载,react的.bower.json文件为: { "name": "react", "main": [ "react.js", "react-dom.js" ], "ignore": [], "homepage": "https://github.com/facebook/react-bower", "version":

我正在尝试将redux添加到一个现有的sailsjs v0.12项目中,而无需更新庞大堆中的每个包。当前react内容通过bower加载,react的.bower.json文件为:

{
  "name": "react",
  "main": [
    "react.js",
    "react-dom.js"
  ],
  "ignore": [],
  "homepage": "https://github.com/facebook/react-bower",
  "version": "0.14.9",
  "_release": "0.14.9",
  "_resolution": {
    "type": "version",
    "tag": "v0.14.9",
    "commit": "81ae9f4ab02851be30ce2b1eef3dfd78d291cfc8"
  },
  "_source": "https://github.com/facebook/react-bower.git",
  "_target": "~0.14.7",
  "_originalSource": "react"
}
我正在试图弄清楚我可以通过bower加载哪些版本的react-redux和redux来使用现有的react版本,以及从哪里获取它们,似乎有很多不同的源代码和版本-我应该通过npm安装某些(但哪些?)版本并将其复制到bower_components文件夹中吗?项目将自动加载该文件夹下的所有内容

更新: 我们复制了redux版本3.0.4(通过cdnjs),并将react redux版本4.4.0复制到bower_components文件夹中。在顶部的一个jsx文件中,我包含如下内容:

requirejs.config({
  urlArgs: "v=" + ssweb.buildNumber,
  paths: {
    'react': '/bower_components/react/react-with-addons.min',
    'reactdom': '/bower_components/react/react-dom.min',
    'label': '/js/shared/reactLabel',
    'moment': '/bower_components/moment/moment',
    'redux': '/bower_components/redux/index',
    'reactRedux': '/bower_components/react-redux/dist/react-redux.min',
    'rootReducer': '/js/reducers/rootReducer',
  },
   shim: {    
     'reactRedux': ["react", "redux"]
   }
});




require(['react', 'label', 'moment', 'reactdom', 'redux' ,'reactRedux','rootReducer'], 
  function (React, Label, moment, ReactDOM, Redux, ReactRedux, rootReducer) {

    var createStore = Redux.createStore;
    var con =  ReactRedux.connect;
    console.log("rootReducer ", rootReducer);
    const store = createStore(rootReducer);
    const Provider  = ReactRedux.Provider;
    console.log("Provider  ", Provider);
    console.log("store ",store);           
    console.log("con  ", con);
    console.log("rootReducer ", rootReducer);

    class PCycle extends React.Component {
       ...
       render(){ 
            const measUnit = this.state.measUnit;
            return (
                <Provider store={store}>...extra stuff</Provider>
            );
        }
    }

    $(function () {
        ReactDOM.render(<PCycle avariable={window.theVariable} />, document.getElementById('p_container') );
    });
});
所以我现在的问题是:我如何做代码的最后一部分,我不导入东西,而是使用其他自调用函数中包含的自调用函数

我有一个.ejs页面,上面有5个不同的组件——每个组件都像上面的PCycle.jsx一样——共存,我希望它们共享同一个redux存储,这样一个组件中的更新可以影响另一个组件的状态。它们包含在带有脚本标记的.ejs页面上

const mapStateToProps = (state, ownProps)=>{
  let id = parseInt(ownProps.match.params.post_id);
  return{
    post: state.posts.find(item => item.id === id)
  }
}

const mapDispatchToProps = (dispatch)=>{
  return {
    deletePost: (id) => {
      return dispatch(deletePost(id))
    }
  } 
}

export default connect(mapStateToProps,mapDispatchToProps)(Post);