编程语言
首页 > 编程语言> > javascript – 预计返回箭头值; function array-callback-return.为什么?

javascript – 预计返回箭头值; function array-callback-return.为什么?

作者:互联网

我有一些问题需要理解为什么我会在这段反应代码上收到编译警告

fetch('/users')
        .then(res => res.json())
        .then(data => {
            data.map(users => {
                console.log(users);
            });
        });

我得到的警告是预期在箭头函数array-callback-return中返回一个值

但是我仍然从我的/ users获取json对象值,并且它们分别打印到控制台.对象是:

    {
        id: 1,
        username: "Foo"
    }, {
        id: 2,
        username: "Bar"
    }

我错过了一个return语句,还是我错过了一些关于map在.then()之后返回值的东西?我不清楚为什么编译警告会出现.

解决方法:

data.map函数(检查Array.map规范:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map)将一个数组(在您的情况下为数据)转换为新数组.此映射由data.map的参数定义. data.map(回调函数)的参数,在你的情况下是箭头函数users => {console.log(users);}必须返回一个值.通过为每个数组元素返回一个值,data.map如何定义映射.

但在你的情况下,回调函数不返回任何东西,只是console.logs.在您的情况下,您可以使用data.forEach(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach),因为您不使用Array.map功能.

注意:如果您决定使用data.map,您应该使用单数(而不是复数)名称作为回调的参数:data.map(user => {console.log(user);});现在为每个用户调用.

标签:javascript,arrays,ecmascript-6,arrow-functions
来源: https://codeday.me/bug/20190712/1441369.html