首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在将数据发送到服务器之前重命名类型记录接口键?

如何在将数据发送到服务器之前重命名类型记录接口键?
EN

Stack Overflow用户
提问于 2016-12-29 10:27:56
回答 1查看 3.3K关注 0票数 0

我已经实现了一个接口,它保存要发送到服务器的数据。

代码语言:javascript
运行
复制
export interface AdminRegistrationData extends User {
    password?: string;
    termsAccepted?: boolean;
}

我将输入数据正确地映射到相关的passwordtermsAccepted字段。但是,当将映射的数据以json的形式发送到服务器时,我希望将termsAccepted键更改为一个API端点的terms_accepted。对于另一个API端点,我只想发送password属性。我可以通过将上面的接口对象转换为json字符串来实现我想要的结果,并做一个替换。但我觉得这是一种丑陋的方式。

所以我想听听你的消息.

EN

回答 1

Stack Overflow用户

发布于 2016-12-29 10:37:27

您可以克隆对象、添加新属性和删除旧属性:

代码语言:javascript
运行
复制
interface AdminRegistrationDataToSend extends User {
    password?: string;
    terms_accepted?: boolean;
}

function prepareToSendData(data: AdminRegistrationData): AdminRegistrationDataToSend {
    let clone = Object.assign({}, data) as AdminRegistrationDataToSend;

    clone.terms_accepted = data.termsAccepted;
    delete clone["termsAccepted"];
    return clone;
}

function prepareToSendPassword(data: AdminRegistrationData): { password: string } {
    return {
        password: data.password
    };
}

编辑

您可以使用箭头函数:

代码语言:javascript
运行
复制
let prepareToSendData = (data: AdminRegistrationData): AdminRegistrationDataToSend => {
    ...
}

但我不明白这件事有什么意义。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41377752

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档