小编bit*_*der的帖子

Javascript ES6在undefined上传播运算符

在开发我的反应程序,我需要一个条件道具发送到一个组件,所以我在什么地方找到一个模式来做到这一点,但它似乎很奇怪,我和我无法理解如何以及为什么它的工作.

如果我输入:

console.log(...undefined)   // Error 
console.log([...undefined]) // Error
console.log({...undefined}) // Work
Run Code Online (Sandbox Code Playgroud)

在未定义时激活扩展运算符时会引发错误,但是当undefined在对象内部时,会返回一个空对象.

我对这种行为感到非常惊讶,这真的是它应该如何,我能依靠这个并且这是一个好习惯吗?

javascript javascript-objects ecmascript-6 spread-syntax

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

使用Jest测试匿名函数相等性

有没有办法测试匿名函数的相等性jest@20

我试图通过类似的测试:

const foo = i => j => {return i*j}
const bar = () => {baz:foo(2), boz:1}

describe('Test anonymous function equality',()=>{

    it('+++ foo', () => {
        const obj = foo(2)
        expect(obj).toBe(foo(2))
    });

    it('+++ bar', () => {
        const obj = bar()
        expect(obj).toEqual({baz:foo(2), boz:1})
    });    
});
Run Code Online (Sandbox Code Playgroud)

目前产量:

  ? >>>Test anonymous function equality › +++ foo

    expect(received).toBe(expected)

    Expected value to be (using ===):
      [Function anonymous]
    Received:
      [Function anonymous]

    Difference:

    Compared values have no visual difference.

  ? >>>Test anonymous function …
Run Code Online (Sandbox Code Playgroud)

javascript unit-testing equality node.js jestjs

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

如果一个没有内容或为空,则隐藏多个列表项

我有一大堆列表项,其中包含更多列表项.

总之<li id="company-name" class="hide">,我想检测这个元素是否为空.

如果它是空的,我想<li class="hide">在直接父<ul></ul>元素中隐藏ALL .

<ul>
    <li>
        <ul class="greyul">
            <li>Location:</li>
            <li class="hide">Company:</li> <!-- DONT HIDE -->
        </ul>
        <ul class="whiteul">
            <li>Melbourne</li>
            <li id="company-name" class="hide"></li> <!-- HIDE -->
            <li class="hide">Sydney</li> <!-- HIDE ALSO-->
        </ul>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

html javascript jquery

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

为什么在React-Router中使用Link组件而不是锚标记?

我是react-router的新手,我知道该Link组件将转换为Anchor标签。所以我的问题是,两者之间的真正区别是什么?

reactjs react-router redux-form

5
推荐指数
0
解决办法
3853
查看次数

使用带有React组件的道具的样式组件

我在反应js项目中使用样式化组件.在构造我的样式化组件img时,我希望背景依赖于组件获得的道具.如果我正在构建一个功能组件,我只需使用:

  const FramedImage = styled.img`
  background-size: cover;
  background: URL(${props.imageUrl});
  background-position: center center;
  background-repeat: no-repeat;`;
Run Code Online (Sandbox Code Playgroud)

在组件内部,它的工作原理.但是我怎么能用类组件实现相同的呢?因为我不能在类本身内声明一个const var,而在它的一边,没有this.props

谢谢!

reactjs styled-components

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

javascript 中的虚函数是什么?

根据虚函数的一种定义:

在面向对象编程中,在诸如 C++ 之类的语言中,虚函数或虚方法是一种可继承和可覆盖的函数或方法,便于动态调度。

这将如何在 javascript 中查找函数?

javascript oop virtual-functions

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

如何在react-table中添加可排序的索引列

因此,我想使用react-table创建一个可排序的列,该列为每行编号(根据其在数据集中的位置)。

根据文档,排序是通过对accessor值进行比较的排序功能完成的。但是,与accessor选项不同,该选项不会公开索引Cell

因此,这将不起作用:

const columns = [
  {
    Header: '#',
    id: 'index',
    accessor: (row) => row.index // 'index' is undefined
  },
  /* ... */
]
Run Code Online (Sandbox Code Playgroud)

我当前的解决方法是将索引直接注入数据集中,如下所示:

myIndexedData = myData.map((el,index) => ({index, ...el})) //immutable

return (
  <ReactTable
    data={myIndexedData}
    columns={columns}
  />
);
Run Code Online (Sandbox Code Playgroud)

这并不是真正的最佳解决方案,尤其是对于大型数据集。有没有我看不到的更好的方法?

reactjs react-table

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