小编Ala*_*hen的帖子

PropTypes在功能无状态组件中

在不使用类的情况下,如何在函数无状态组件中使用PropTypes?

export const Header = (props) => (
   <div>hi</div>
)
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-proptypes react-props

78
推荐指数
2
解决办法
3万
查看次数

解构数组得到第二个值?

如何使用destruct获取数组?

const num = [1,2,3,4,5];
const [ first ] = num; //1
Run Code Online (Sandbox Code Playgroud)

console.log(first)我能够得到1,但是当我尝试做到const [ null, second ] = num这一点时,预计会出现令牌错误.如何获得num数组的第二项?

javascript ecmascript-6

21
推荐指数
2
解决办法
5435
查看次数

文件中的多个组件

说我有组件A.

喜欢

export default class ComponentA extends components {
   render(){
      return() //use componentB here?
   }
}

class ComponentB extends components {

}
Run Code Online (Sandbox Code Playgroud)

如何在ComponentA中创建另一个组件并使用它?

javascript reactjs

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

使用Object.keys ES6更改对象键

我有

var tab = {
abc:1,
def:40,
xyz: 50
}
Run Code Online (Sandbox Code Playgroud)

我想将abc,def,xyz的名称更改为其他内容,是否可能?

我试过了

const test = Object.keys(tab).map(key => {
  if (key === 'abc') {
    return [
      a_b_c: tab[key]
    ]
  }
});

console.log(test);
Run Code Online (Sandbox Code Playgroud)

我有很多未定义的键.

javascript ecmascript-6 reactjs

10
推荐指数
4
解决办法
2万
查看次数

React导入根路径助手

由于必须导入各种帮助程序或组件,因此在做出反应时遇到了这个问题

import approxPerDay from '../../../utils/approxPerDay.js'
import otherstuff from '../components/otherstuff'
Run Code Online (Sandbox Code Playgroud)

在另一个文件中可能是 import approxPerDay from '../utils/approxPerDay.js'

找到相对路径确实非常困难且耗时。有没有npm或助手可以解决此问题?

javascript reactjs

6
推荐指数
3
解决办法
7036
查看次数

点击任意位置以关闭下拉列表

我在页面上有多个自定义构建下拉组件.我使用setState触发列表项打开

toggleDropdown = (id) => {
        this.setState(prevState => ({
            [`dropdown${name}`]: !prevState[`dropdown${id}`] //dropdownA, dropdownB, dropdownC and so on
        }))
    }
Run Code Online (Sandbox Code Playgroud)

如果在菜单打开时单击下拉列表,也会切换它.但是接下来我还有更多的下拉菜单,如果我打开一个下拉列表,其他下拉列表将不会关闭,如何解决这个问题?我做了一个"hacky"方式混合使用componentWillMount中的jquery,绑定body上的click事件,检查下拉项是否可见,如果是,则关闭它.

我的问题是,有没有更好的做法来避免使用jquery?

javascript jquery ecmascript-6 reactjs

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

意外令牌:使用map形成对象数组

我想生产这个

[
        {name: "james", age: 10},
        {name: "john", age: 12},
        {name: "johnny", age: 56}
    ]
Run Code Online (Sandbox Code Playgroud)

我的下面代码失败了,获得了预期的令牌

let x = [
    {name: "james", age: 10, school: "London"},
    {name: "john", age: 12, school: "India"},
    {name: "johnny", age: 56, school: "USA"}
]

let y = x.map(obj => {name:obj.name, age:obj.age})

console.log(y)
Run Code Online (Sandbox Code Playgroud)

javascript ecmascript-6

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

与过滤器 es2016 相反

当我删除用户后,我会执行以下代码。

users.filter(obj => obj.id === user.id);
Run Code Online (Sandbox Code Playgroud)

这是错误的,因为现在我的用户对象留下了一个用户对象,相反我应该根据 id 从列表中删除该项目。所以我想知道过滤功能是否有相反的功能?

javascript ecmascript-6

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

ES6地图在对象数组上抛出错误

const normalizeEventTypes = nextProps.events.space_events.map(obj, i => 
     obj.id
)
Run Code Online (Sandbox Code Playgroud)

我没有定义代码obj,我的对象数组看起来像这样

{
    "space_events": [{
            "id": 1,
            "name": "Anniversaries"
        },
        {
            "id": 2,
            "name": "Brand Rollout"
        }
    }]
}
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?

javascript ecmascript-6 reactjs

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

es6中的默认值不适用于箭头功能

handleSuccessFeatureListing = (selectedOption=7) => {
    console.log(selectedOption);
}
Run Code Online (Sandbox Code Playgroud)

为什么selectedOption仍然可以为null?我以为我已经将7设置为selectedOption的参数的默认值?

javascript ecmascript-6 babeljs

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