react启动项目:npm start
taro-react启动微信小程序:npm run dev:weapp
1.页面赋值必须使用
this.setState({
num: allNum,
allPrice: allPrice
})
2.监听事件 events class
class Event {
constructor(){
this.events = {};
}
//监听
on(eventName,callBack) {
if(this.events[eventName]) {
//存在
this.events[eventName].push(callBack)
} else {
this.events[eventName] = [callBack]
}
}
//触发
emit(eventName,params) {
if(this.events[eventName]) {
this.events[eventName].map((callBack)=>{
callBack(params)
})
}
}
}
export default Event
引用:
import Event from './events'
let myEvent = new Event();
export function getEvent () {
return myEvent;
}
触发处:
import {getEvent} from '../../utils/common'
let myEvent = getEvent();
在需要触发的位置:myEvent.emit("addcut");
监听触发后:
events.on("addcut",()=>{
//回调里做数据处理
})
3.父级与子级的传值
父级中:
<AddCut food={item} />
子级中:
componentDidMount(){
this.setState({
num: getFoodCount(this.props.food)
})
}