1、动态获取object数据,必须给数据一个初始值,否则无法调用,对象里面的数据,跑出错误;
2、请求的数据最好在 componentDidMount 中,有动态更新的数据,用state存储,或者使用 mobx||redux 进行数据管理,其他的如 componentDidUpdate使用起来非常消耗性能,不建议在数据量大的时候使用;
3、mobx的es6写法,ie浏览器不支持,如需兼容ie最好采用es5的写法(ie下不支持Ant DesignButton中套用Link标签);
4、babel 升级之后,webpack打包提示babel转移到babel-core ,在安装了之后babel-core还是报错,这是需要uninstall babel ,webpack里面的配置不再支持省略loader
原写法:
{
test: /\.css$/,
loader: 'style!css'//添加对样式表的处理
}
新写法:
{
test: /\.css$/,
loader: 'style-loader!css-loader'//添加对样式表的处理
}
5、关于react route自从升级到4.1.1版本之后,直接
<Router history={browserHistory}></Router>
会报错'react-router' does not contain an export named 'browserHistory'.,新版的估计不支持直接这样使用(可怜我3.0的react route都可以),所以现在我们使用react route必须要重新进行配置,看来网上教程说是在服务端进行设置,由于现在只是个人联系项目,所以教大家一下使用新的标签
请确保安装一下模块
"react": "^15.6.1", "react-dom": "^15.6.1", "react-router": "^4.1.1", "react-router-dom": "^4.1.1"
import React, { Component } from 'react';
import { Switch, Redirect, Router, Route, IndexRoute, browserHistory, hashHistory } from 'react-router';
import { BrowserRouter, Link } from 'react-router-dom';
import { createHashHistory } from 'history';
// 登录界面
import Login from '../Login/index';
class App extends Component {
render() {
return (
<BrowserRouter>
<Switch>
<Route path="/" component={Login} />
</Switch>
</BrowserRouter>
);
}
}
export default App;
路由包含在
BrowserRouter
Switch下就可以直接使用了,给大家看一下效果
![](https://i-blog.csdnimg.cn/blog_migrate/a701b5ba38d6f845f2cca3816506bd79.png)