ZBLOG

componentWillMount() { // /:templateId/:status/:productCode 模板ID type == add新建copy复制 升级upgrade 维护wh 产品ID console.log('this.props.params', this.props.params); const { productCode, type, templateId, versionNo } = this.props.params; ...

根据提供的代码,您可以将templateId字段传递给basicIfo数据,并在最后的handleFilterSubmit事件中使用。请按照以下步骤进行修改:

  1. 在组件的状态(state)中添加一个新的字段 templateId: null

  2. 修改 componentWillMount() 方法如下:

  1. componentWillMount() {
  2. console.log('this.props.params', this.props.params);
  3. const { productCode, type, templateId, versionNo } = this.props.params;
  4. this.setState({ templateId }); // 将templateId保存到组件状态中
  5. this.props.updateStatus(type);
  6. if (type !== 'add' && type !== 'copy') {
  7. this.props.productDetail({ productCode, versionNo, taskId: '' });
  8. this.props.updateProduct({ productCode, versionNo, taskId: '' });
  9. }
  10. }
  1. 修改 basicIfo() 方法如下:
  1. basicIfo(values) {
  2. console.log(values);
  3. const { templateId } = this.state;
  4. // 在values对象中添加templateId字段
  5. const updatedValues = {
  6. ...values,
  7. templateId: templateId || ''
  8. };
  9. this.setState({
  10. basicIfo: updatedValues
  11. });
  12. this.basicIfo = updatedValues;
  13. }
  1. 修改 andleFilterSubmit() 方法如下:
  1. andleFilterSubmit(isSave) {
  2. console.log(this.basicRef, 'this.basicRef');
  3. // 获取保存在组件状态中的templateId值
  4. const { templateId } = this.state;
  5. console.log(this.basicIfo);
  6. if (isSave) {
  7. const values = {
  8. ...this.props.productData,
  9. status: 'prodPass',
  10. note: this.basicRef.formVales.note,
  11. fpmsBaseInfo: {
  12. ...this.basicIfo.fpmsBaseInfo, // 使用basicIfo中的fpmsBaseInfo字段
  13. templateId // 将templateId字段添加到fpmsBaseInfo中
  14. },
  15. fpmsControlInfo: this.caculateRef.formVales,
  16. fpmsCostAccountingInfo: this.controllRef.formVales,
  17. fpmsPeriodPublicationInfo: this.periodRef.terms,
  18. fpmsFileInfo: this.fileRef.files,
  19. limitCode: this.limitCodeRef.limitCode
  20. };
  21. const { type } = this.props.params;
  22. console.log(values, type, '903420943295u238y5782352390502359');
  23. if (type === 'add' || type === 'copy') { // 修改此处条件判断
  24. this.addProductModel(values);
  25. } else {
  26. const status = type === 'wh' ? null : values.status;
  27. this.updateProduct({ ...values, status });
  28. }
  29. } else {
  30. this.setState(prevState => ({
  31. activeKey: prevState.activeKey + 1
  32. }));
  33. }
  34. if (this.state.activeKey === 6) {
  35. const values = {
  36. ...this.props.productData,
  37. status: 'prodPass',
  38. // 注意这里的修改:使用保存在组件状态中的basicIfo数据对象
  39. fpmsBaseInfo: {
  40. ...this.basicIfo.fpmsBaseInfo,
  41. templateId // 将templateId字段添加到fpmsBaseInfo中
  42. },
  43. fpmsControlInfo: {
  44. ...this.props.productData.fpmsControlInfo,
  45. penaltyType: {
  46. [this.props.productData.fpmsControlInfo.penaltyType]: true
  47. }
  48. },
  49. fpmsPeriodPublicationInfo: this.props.productData.fpmsPeriodPublicationInfo,
  50. fpmsFileInfo: this.props.productData.fpmsFileInfo,
  51. limitCode: this.props.productData.limitCode
  52. };
  53. this.props.productInput(values);
  54. }
  55. }

以上修改会将 templateId 字段传递给 basicIfo 数据,并在最后的处理函数中正确使用该值。请注意修改代码时的上下文关系,确保正确引用变量和对象属性。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=10387

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?