如何映射到数组并使用tslint返回对象。(句法糖)

The*_*224 0 typescript tslint angular

这是一个纯粹的句法糖问题。

如何在map不使用TSLint的情况下使用遍历数组并返回新对象:

可以通过省略花括号和关键字“ return”,并将对象文字括在括号中来简化此箭头函数的主体。

例如,对象用户:

class User {
    constructor(
        public id: number, 
        public first_name: string, 
        public last_name: string, 
        public gender: Date, 
        public location: number, 
    )
}
Run Code Online (Sandbox Code Playgroud)

当我这样做时:

const simple_users = users.map(u => { return { name: u.name, id: u.id} });
Run Code Online (Sandbox Code Playgroud)

然后发生这种情况:

[tslint]通过省略花括号和
关键字“ return”,并将对象文字括在括号中。(箭头返回简写)

而且我要遵守tslint规则arrow-return-shorthand

Pan*_*kar 7

只需将您的对象包装在内部()(括号)并删除functionand return语句。简写如下。

const simple_users = users.map(u => ({ name: u.name, id: u.id}));
Run Code Online (Sandbox Code Playgroud)

进一步的destructuring版本将更短。

const simple_users = users.map(({name, id}) => ({ name, id}));
Run Code Online (Sandbox Code Playgroud)