后端的Project表里没有pin字段

来源:9-4 编辑后刷新-useState的懒初始化与保存函数状态

yjies

2021-04-24

你好,老师
有几个问题问一下

  1. 请问这里的pin值是怎么取到的,在pinProject没有。
const pinProject = (id:number) => (pin:boolean) => mutate({id,pin});
onCheckedChange = {pin => pinProject(project.id)}
  1. 请问这里的num是哪里取到的,以及后面的 onCheckedChange?.(!!num)是什么返回值的调用吗?
 return <Rate 
              count = {1}
              value = {checked ? 1 : 0}
              onChange = {num => onCheckedChange?.(!!num)}
              {...restProps}
            />

3… 从Application那里看到Project的表里并没有pin字段,pin的值是undefined. 是我哪里有问题吗?

图片描述

写回答

2回答

Nolan

2021-04-24

  1.  pin值是onCheckedChange的回调函数的参数

  2. num 也是回调函数的参数

  3. 没有的话就是默认false
    感觉你需要再去仔细想一下回调函数是怎么被调用的,理解回调函数被调用时参数被调用者传入

1
2
Nolan
回复
yjies
后端的表里是有pin字段的,后端是我写的,我没给它一个默认值。你patch就会有新的值了
2021-04-24
共2条回复

慕无忌1126555

2021-05-13

pin 就相当于形参,你可以给他e也好eve也好value也好都行,把pinProject(project.id)看成是方法名字,就像这样pin => pinProject(project.id)(pin)可以简写为pinProject(project.id),我是这样理解得,不知道对不对


0
1
慕莱坞444667
按照 我的理解, pinProject(project.id,project.pin) 主要是针对 project.id 的那一条记录,把 project.pin的值作为 param 传给 后端,(pin 的值在 点击 五角星 rate后, 由 rate组件 进行切换1与0的切换,并且传给 回调函数 pinProject(num),num此时就是当前星星的数字1(点击后 在1与0之间切换),并且运行 ,即传到后端,修改记录的中的pin字段的值 为:true或者false
2022-03-04
共1条回复

React17+Hook+TS4 优质实践,仿 Jira 企业级项目

解锁 React17 高阶用法,轻松应对大型复杂长周期项目

2691 学习 · 1236 问题

查看课程