redux
- 今天在寫項目的時候善茎,由于加了
redux
缭召,在entry.js
里面導(dǎo)入了component
里面的組件滋捶,結(jié)果導(dǎo)致錯誤this.props.onAdd() is not a function
,最后改為導(dǎo)入container
里面的組件解決了這個問題
export default connect(mapStateToProps, mapDispatchToProps)(Add);
通過react-redux
提供的connect
方法將我們需要的state
中的數(shù)據(jù)綁定到props
上嗜诀,同時綁定展示組件猾警,在展示組件上顯示,所以入口文件里面需要導(dǎo)入容器組件
middle
- 錯誤做法
const createStoreMiddle = applyMiddleware(AddRequest);
const Store = createStoreMiddle(reducer);
- 正確做法
const createStoreMiddle = applyMiddleware(AddRequest);
const Store = createStore(reducer,createStoreMiddle);
或者
const createStoreMiddle = applyMiddleware(AddRequest)(createStore);
const Store = createStoreMiddle(reducer);
錯誤原因是沒有將applyMiddleware
添加在createStore
中
請求狀態(tài)
- 在控制臺
network
里面看到請求狀態(tài)是pendding
隆敢,然后發(fā)現(xiàn)是后臺沒有響應(yīng)发皿,導(dǎo)致http
處于pendding
狀態(tài)
webpack
- 打算添加兩個入口文件,然后添加之后拂蝎,很不明白為什么打包的兩個文件一個正常穴墅,另一個
import
報錯,不知道是沒有打包成功還是其他問題温自,但是安裝了npm install babel-cli
玄货,將之前的node
運行改為babel-node
之后解決了這個問題 - 代碼如下:
entry:{
src:'./src/entry.js',
route:'./routes/model.js'
},
output:{
path:__dirname+'/public/dist',
filename:"[name].js"
},
-
babel-cli
是工具自帶一個babel-node
命令,提供一個支持ES6
的REPL(Read-Eval-Print-Loop悼泌,可交互式運行)環(huán)境松捉。它支持Node
的REPL環(huán)境的所有功能,而且可以直接運行ES6
代碼
總結(jié)
- 項目中遇到了很多問題馆里,總的來說還是原理沒有搞清楚隘世,雖然學(xué)會了簡單調(diào)試定位問題,但解決問題的能力還是有待提高鸠踪,今天遇到問題的時候在Stack Overflow上提問丙者,也得到了答案,以后要多多提問营密,多和同學(xué)討論
- 寫demo真的很有用械媒,簡單的學(xué)會一個東西,但有時候遇到問題评汰,因為有上下文環(huán)境纷捞,所以demo比較難劃分的很小