gpt4 book ai didi

javascript - 内联样式和 ReactCSSTransitionGroup

转载 作者:行者123 更新时间:2023-11-29 10:37:09 25 4
gpt4 key购买 nike

我可以将 react-addons-css-transition-group 中的 ReactCSSTransitionGroup 与 React 内联样式一起使用吗?如果是,怎么办?

我正在处理的组件:

import React, { Component } from 'react'
import { bindActionCreators } from 'redux'
import { connect } from 'react-redux'
import ReactCSSTransitionGroup from 'react-addons-css-transition-group'

import { removeNotification } from '../actionCreators'
import Notification from './Notification'

const mapStateToProps = state => ({
notifications: state.notifications
})

const mapDispatchToProps = dispatch => ({
actions: bindActionCreators({ removeNotification }, dispatch)
})

class Notifications extends Component {
render() {
var style = {
position: 'fixed',
top: 20,
right: 20,
width: 300,
zIndex: 99
}
var tstyle = {
'notification-enter': {
visibility: 'hidden',
transform: 'translate3d(100%,0,0)'
},
'notification-leave': {
visibility: 'visible',
transform: 'translate3d(0,0,0)'
},
'notification-enter-notification-enter-active': {
visibility: 'visible',
transform: 'translate3d(0,0,0)',
transition: 'all 0.4s'
},
'notification-leave-notification-leave-active': {
visibility: 'hidden',
transform: 'translate3d(100%,0,0)',
transition: 'all 0.4s'
}
}

return (
<ul style={style}>
<ReactCSSTransitionGroup
style={tstyle}
transitionName='notification'
transitionEnterTimeout={400}
transitionLeaveTimeout={400}>
{this.props.notifications.map((notification, index) => {
return <Notification
key={index}
type={notification.type}
message={notification.message}
timeout={10000}
remove={this.props.actions.removeNotification} />
})}
</ReactCSSTransitionGroup>
</ul>
)
}
}

export default connect(mapStateToProps, mapDispatchToProps)(Notifications)

最佳答案

ReactCSSTransitionGroup 与内联样式不兼容,因为它向/从 DOM 节点添加或删除类名以触发转换。但是你可以使用 ReactTransitionGroup使您自己的组件与 ReactCSSTransitionGroup 做的事情相同,但具有内联样式。

如果你不想自己开发,你可以使用我之前写的一个用 npm 安装它:ReactInlineTransitionGroup .

它比 ReactCSSTransitionGroup 有一些优势,例如您可以编写 CSS 转换而不用担心在组件中设置超时属性,并且您可以传递回调来检查 child 何时进入或离开您的组。

关于javascript - 内联样式和 ReactCSSTransitionGroup,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34908772/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com