我喜欢为用户资源创建一个新的自定义路由,例如/:id / passreset映射到passreset组件,类似于/ user /:id / delete
这个/ passreset会打开一个像/ delete这样的对话框并要求确认。
我做了什么:
添加customRoutes:
<Route exact path="/users/:id/passreset" component={ActionChangePassword} />
创建新按钮:
containerElement={<Link to={`${linkToRecord(basePath, record.id)}/passreset`} />}
从admin-on-rest \ src \ mui \ delete \ Delete.js
但是,它无法正常工作。继续收到以下错误消息。请指教。
谢谢!
TypeError: Cannot read property 'data' of undefined
Function.mapStateToProps [as mapToProps]
src/actionPassReset.js:123
120 | function mapStateToProps(state, props) {
121 | return {
122 | id: decodeURIComponent(props.match.params.id),
> 123 | data: state.admin[props.resource].data[decodeURIComponent(props.match.params.id)] ,
124 | isLoading: state.admin.loading > 0,
125 | };
126 | }
答案 0 :(得分:0)
那是因为该州已在1.3.0中进行了重组。我们应该已经发布了一个新的主要版本,并记录了重大变化。
新状态为state.admin.resources[props.resource].data