小编Ben*_* Li的帖子

在ES6导入语句中使用Curly Braces有什么用

我可以看到有两种不同的导入方式

import React from 'react'
import { render } from 'react-dom'
Run Code Online (Sandbox Code Playgroud)

第二个有括号.那两者有什么区别?什么时候应该添加括号?谢谢

reactjs redux

26
推荐指数
2
解决办法
7193
查看次数

在Redux中,是否有必要进行深层复制

下面的对象action.data有一个嵌套对象address

{
    name: 'Ben',
    address: {
        country: 'Australia',
        state: 'NSW'
    }
}
Run Code Online (Sandbox Code Playgroud)

我应该如何在减速机中处理它?

const rootReducer = (state = initState, action) {
    switch(action.type) {
        switch RECEIVE_DATA:
            return {...state, data: action.data}
    }
}
Run Code Online (Sandbox Code Playgroud)

我可以像上面那样做吗?我只是将整个对象分配给data没有复制?

要么

const rootReducer = (state = initState, action) {
    switch(action.type) {
        switch RECEIVE_DATA:
            const address = {...action.data.address}
            const data = {...action.data, address}
            return {...state, data}
    }
}
Run Code Online (Sandbox Code Playgroud)

或者我应该对该对象进行深层复制并将其分配给data?谢谢

reactjs redux

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

在React中,onMouseEnter或hover未按预期工作

opacity = 1在开头有一张图片.

当鼠标进入图像时,请更改opacity = 0.5.当鼠标离开图像时,请更改不透明度.

这是一个代码:

mouseEnter() {
    console.log('mouse enter')
    const classname = '.' + this.props.post.code
    document.querySelector(classname).classList.add('image-hover-opacity')
}

mouseLeave() {
    console.log('mouse leave')
    const classname = '.' + this.props.post.code
    document.querySelector(classname).classList.remove('image-hover-opacity')
}

    render() {
        <img src={src} onMouseEnter={::this.mouseEnter} onMouseLeave={::this.mouseLeave} />
    }
Run Code Online (Sandbox Code Playgroud)

onMouseEnter和onMouseLeave分别在鼠标进入和离开图像时被触发.但问题是当我在图像中移动鼠标时,onMouseEnter和onMouseLeave都会被触发.

我也尝试过css解决方案,当我将鼠标悬停在图像上时,更改不透明度属性.但问题是一样的:当我在图像中移动鼠标时,:悬停而不是悬停被多次触发.

怎么解决这个?谢谢


更新 我以前的代码中有一些东西.创建了一个jsfiddle,它的工作原理.对不起大家

hover mouseevent mouseenter mouseleave reactjs

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

数组映射函数不会改变元素

在 JavaScript 中,我有一个数组,它是

array = [true, false]
Run Code Online (Sandbox Code Playgroud)

在某些情况下,我试图初始化这个数组

array.map(item => {
   item = false
})
Run Code Online (Sandbox Code Playgroud)

运行上面的代码后,数组没有改变,仍然是[true, false],所以.map有时不可靠?


另一个问题:运行下面的代码后,数组发生了变化。为什么在这种情况下有效?

let array = [{id:1, checked: false}, {id:2, checked:true}]
array.map(item => {
    item.checked = true
})
Run Code Online (Sandbox Code Playgroud)

数组变成 [{id:1, checked: true}, {id:2, checked:true}]

javascript arrays array.prototype.map

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

React中的PropTypes

在某些例子中,我看到过这样的事情:

Footer.propTypes = {
  completedCount: PropTypes.number.isRequired,
  activeCount: PropTypes.number.isRequired,
  filter: PropTypes.string.isRequired,
  onClearCompleted: PropTypes.func.isRequired,
  onShow: PropTypes.func.isRequired
}
Run Code Online (Sandbox Code Playgroud)

这些PropTypes真正在做什么?他们是不是很好或必须拥有?

reactjs react-proptypes

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

如何使用 CSS 将图像的高度设置为与宽度相同

在我的项目中,有一些图像。我的代码看起来像:

<div className="col-sm-6">
   <img src="xxx">
</div>
<div className="col-sm-6">
   <img src="xxx">
</div>
Run Code Online (Sandbox Code Playgroud)

的宽度为img的 100% div,即整个屏幕的 50%。如果我调整浏览器的大小,图像的宽度就会改变。在这种情况下,如何保持高度仍然与宽度相同?

html css image css-position responsive-design

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

在与redux的反应中,如何做post post请求

对于异步示例,我看过从服务器获取数据.但是发帖请求怎么样?怎么做?我不想用jquery.ajax它来做,因为我甚至不想导入jquery

谢谢

post reactjs redux

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

Angular2,应该使用哪种语言作为首选语言

我是Angular 2的新手,我了解到开发人员可以使用类型脚本,ES6和ES5进行开发,我知道类型脚本是ES6和ES5的超集.

因为类型脚本和ES6/ES5之间的语法完全不同,哪一个应该是最常用的?是什么原因?

谢谢

ecmascript-5 typescript ecmascript-6 angular

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