在发送响应回送4之前删除属性/属性删除问题

问题描述

我想在将其作为响应发送之前删除用户”对象的属性

 async create(
    @requestBody({
      content: {
        'application/json': {
          schema: getModelSchemaRef(User,{
            title: 'NewUser',exclude: ['id','permissions'],}),},})
    user: Omit<User,'id'>,): Promise<User> {
    user.permissions = [];
    validateCredentials(_.pick(user,['email','password']));
    user.password = await this.hasher.hashPassword(user.password)
    const savedUser = await this.userRepository.create(user);
    savedUser.password = "********";
    delete savedUser.permissions;   //<- here
    return savedUser;
  }

我的问题是,由于我更新了TypeScript版本,因此出现此错误: “'删除'运算符的操作数必须是可选的”。

enter image description here

然后我尝试将其设置为“ undefined”或“ null”:

类型'null'不能分配给类型'String []'。

类型'undefined'不能分配给类型'String []'。

我读过here,可以通过将属性设置为“可选”来解决此问题,但恐怕它会与回送的数据连接器混淆+我只想从结果中隐藏它,不会改变我的课堂模式。

有没有没有警告/错误删除方法

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...