相关疑难解决方法(0)

ECMAScript 6返回对象的箭头函数

当从箭头函数返回一个对象时,由于语法的模糊性,似乎有必要使用额外的一组{}和一个return关键字.

这意味着我不能写p => {foo: "bar"},但必须写p => { return {foo: "bar"}; }.

如果箭头函数返回除对象以外的任何内容{},return则不需要,例如:p => "foo".

p => {foo: "bar"}回报undefined.

修改后的p => {"foo": "bar"}抛出" SyntaxError:意外标记:' :'".

有什么明显的东西我不见了吗?

javascript ecmascript-6 arrow-functions

581
推荐指数
4
解决办法
9万
查看次数

React.js - this.props.children 当从父级传播 .map 的结果时是一个对象

this.props.children当我.map()从父级传播 a 的结果时,我有一些奇怪的行为正在转换为对象。

例子:

const items = [
  { id: 1, name: "Name1" },
  { id: 2, name: "Name2" }
].map((item) => {
  return (
    <DropdownMenu_listItem key={item.id} item={item} />
  );
});

render() {
  return (
    <DropdownMenu
      label={'Some label'}
      onChange={() => {}}
    >
      {...items}
    </DropdownMenu>
  );
}

// DropdownMenu.js

render() {
  console.log(this.props.children); // {0: {…}, 1: {…}}

  return (
    // ...
  );
}
Run Code Online (Sandbox Code Playgroud)

奇怪的是,当我省略.map()和直接传递元素时,它们会this.props.children像预期的那样以数组的形式出现:

render() {
  return (
    <DropdownMenu
      label={'Some label'}
      onChange={() => {}} …
Run Code Online (Sandbox Code Playgroud)

javascript children reactjs

8
推荐指数
2
解决办法
1万
查看次数

在JavaScript中替换数组键的最佳方法是什么?

这是我的阵列:

data = [{"src": 'a'},
        {'src': 'b'},
        {'src': 'c'}];
Run Code Online (Sandbox Code Playgroud)

但我想改变这样的关键:

data = [{"letter": 'a'},
        {'letter': 'b'},
        {'letter': 'c'}];
Run Code Online (Sandbox Code Playgroud)

javascript arrays

1
推荐指数
3
解决办法
5221
查看次数

如何将Javascript地图功能与对象文字一起使用?

我在写一些Javascript代码时遇到了问题.我正在尝试使用map函数来创建一个新数组.这是我的代码:

[1,2,3].map(m => {'id': m})
Run Code Online (Sandbox Code Playgroud)

我预计结果会是:

[
    {'id': 1},
    {'id': 2},
    {'id': 3}
]
Run Code Online (Sandbox Code Playgroud)

相反,我得到一个错误,上面写着"Uncaught SyntaxError:Unexpected token:"

有人能告诉我我做错了什么吗?

javascript

1
推荐指数
1
解决办法
117
查看次数

将数组映射到TypeScript中的另一个数组

我可以改善我的代码,并用array.map代替for-loop吗?

我搜索了一下,我想我可以这样做,但是我没有找到如何应用的方法。

这是我发现的

var result = arr.map(person => ({ value: person.id, text: person.name }));
Run Code Online (Sandbox Code Playgroud)

我的代码在这里:

  public getFlights(): Observable<RowItem[]> {
    return this.http
      .get(this.apiHostFlights)
      .map((res: any) => {
        return <LocationModelItem[]>res.json();
      })
      .map((items: LocationModelItem[]) => {
        var rowItems: RowItem[]=[];
        var cachedLenght = items.length;
        for (var i = 0; i < cachedLenght; i++) {
          rowItems.push(
            new RowItem(i, items[i].name, items[i].img, items[i].category)
          );
        }
        return rowItems;
      })
      .catch((error: any) => {
        return Observable.throw(error.statusText);
      });
  }
Run Code Online (Sandbox Code Playgroud)

reactive

0
推荐指数
1
解决办法
5342
查看次数