javascript - 使用映射返回具有键和值的对象

标签 javascript vue.js vuejs2

我有一个响应,应该需要使用映射返回具有指定键和值的对象

我试过了

response.data.data = response.data.data.map((user) =>{
  return console.log({ user.id : user.name});
});

但是由于user.id,它给了我一个错误

如何设置来自响应的 key ?

这是我的数据响应

data: [
{
    id: 2,
    name: "Orval McLaughlin",
    email: "okoch@example.org",
    contacts: "09083692343",
    created_at: "2018-09-05 15:08:54",
    updated_at: "2018-09-05 15:08:54",
    deleted_at: null
}
],

我正在使用 vue js 输入标签,其中我需要将数据绑定(bind)到 prop 中 像这样

{2: Orval McLaughlin}

最佳答案

在映射函数中使用 return console.log(whatever) 是没有意义的,因为它总是返回 undefined .map() 将创建一个未定义条目数组:

let users = [{ id: 1, name: "r2d2" }]

let arr = users.map(user => console.log({ id: user.id, name: user.name}))

console.log(arr);

相反,将您的映射函数更改为:

let users = [{
    id: 2,
    name: "Orval McLaughlin",
    email: "okoch@example.org",
    contacts: "09083692343",
    created_at: "2018-09-05 15:08:54",
    updated_at: "2018-09-05 15:08:54",
    deleted_at: null
}]

let arr = users.map(user => ({ [user.id]: user.name }))

console.log(arr);

要在其属性名称位于变量 propName 中的对象上创建属性,请使用方括号表示法:

let user = { [propName]: value }

请注意,您还可以使用以下表示法访问对象的属性:

console.log(user[propName]);

关于javascript - 使用映射返回具有键和值的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52189614/

相关文章:

javascript - Vuetify 构建为 Web 组件样式未显示

javascript - 在 Passport.js 中验证多个模型

jquery-mobile - 我可以同时使用 jQuery Mobile 和 Vue.js 吗?

vue.js - vuex mapGetters 是否值得使用?

vue.js - vue,i18n 翻译 : $t in alert()

vue.js - 页面刷新时丢失 router.params

javascript - 为动态对象定义编写更清晰的代码

javascript:如何将变量转换为具有相同名称并返回原始值的函数

javascript - 在树莓派上的 HTML 和 python 之间发送消息

javascript - 将图像 div 分成像素行并附加事件