DvaJs
dispatch
在 dva 中,connect Model 的组件经由过程 props 能够访问到 dispatch,
能够挪用 Model 中的 Reducer 或许 Effects,罕见的情势如:
dispatch({
type: ‘user/add’, // 假如在 model 外挪用,须要增加 namespace
payload: {}, // 须要通报的信息
});
能够经由过程相似this.props.dispatch({
type: ‘siteConfig/eff_getMutantGene’, // siteConfig为modal文件夹名,eff_getMutantGene为Effects要领。
payload: {itemId: item[i].itemid}
})
挪用Model中的Reducer或许Effects。
connect
假如要提议一个 action 须要运用 dispatch 函数;
须要注重的是 dispatch 是在组件 connect Models今后,
经由过程 props 传入的。
Ant Design
<From.Item />
表单域
表单一定会包括表单域,表单域能够是输入控件,
规范表单域,标签,下拉菜单,文本域等。
这里我们封装了表单域 <Form.Item /> 。
<Form.Item {…props}>{children}</Form.Item>
getPopupContainer
getPopupContainer菜单衬着父节点。默许衬着到 body 上,
假如你碰到菜单转动定位题目,尝尝修改成转动的地区,并相对其定位。
假如发明下拉菜单追随页面转动,
或许须要在其他弹层中触发 Select,
请尝试运用 getPopupContainer={triggerNode => triggerNode.parentNode}*
将下拉弹层衬着节点固定在触发器的父元素中。
getFieldDecorator.1
经由 getFieldDecorator 包装的控件,表单控件会自动增加 value(或
valuePropName 指定的其他属性) onChange(或 trigger 指定的其他属性),
数据同步将被 Form 接受,这会致使以下效果:
你不再须要也不该该用 onChange 来做同步,但照样能够继承监听 onChange 等事宜。
你不能用控件的 value defaultValue 等属性来设置表单域的值,
默许值能够用 getFieldDecorator 里的 initialValue。
你不该该用 setState,能够运用 this.props.form.setFieldsValue 来动态转变表单值。
getFieldDecorator.2
const { getFieldDecorator, getFieldValue } = this.props.form
须要用到getFieldDecorator 等要领时须要用到this.prop.form。还须要在末端加上Form.create
经由 Form.create 包装的组件将会自带 this.props.form 属性,
注重:运用 getFieldsValue getFieldValue setFieldsValue 等时,
应确保对应的 field 已用 getFieldDecorator 注册过了。
resetFields
resetFields重置一组输入控件的值(为 initialValue)与状况,
如不传入参数,则重置一切组件
Form.create()
经 Form.create() 包装过的组件会自带 this.props.form 属性
带有勾选框的Table
Table的rowSelection的type属性能够转变可选表单的单选或多选题目。