Material UI:react transition group v 2.2.0

时间:2017-08-09 13:42:28

标签: reactjs material-ui react-transition-group

我正在使用<Transition>,正如React Transition Group的main documentation所述。

import React from 'react';
import PropTypes from 'prop-types';
import Transition from 'react-transition-group/Transition';

const defaultStyle = {
 transition: `opacity 300ms ease-in-out`,
 opacity: 0,
};

const transitionStyles = {
 entering: { opacity: 1 },
 entered: { opacity: 1 },
};

const Fade = ({
 in: inProp,
 children,
}) => (
 <Transition in={inProp} timeout={300}>
  {state => (
   <div
    style={{
      ...defaultStyle,
      ...transitionStyles[state],
    }}
  >
    {children}
  </div>
)}
</Transition>
);

Fade.propTypes = {
 in: PropTypes.bool.isRequired,
 children: PropTypes.node.isRequired,
};

export default Fade;

它有效,但不太适合使用Material UI,尤其是按钮,在我的应用程序的任何地方:当我点击它们时,它们背后会出现一个白色div:

<div in="false" style="position: absolute; top: -88.218px; left: -97.218px; height: 220.436px; width: 220.436px; border-radius: 50%; background-color: rgb(255, 255, 255);"></div>

在控制台中出现这个奇怪的错误:

Warning: Unknown props `onExited`, `appear`, `enter`, `exit` on <div> tag. Remove these props from the element.

那些道具是关于过渡的,但我无法理解这个问题。

我使用React 15.6.1,Material ui 0.18.7和React Transition Group 2.2.0

1 个答案:

答案 0 :(得分:0)

我今天遇到了这个错误,我在他们的github上记录了一个问题+ repro案例。

https://github.com/callemall/material-ui/issues/8046

(repro:https://codesandbox.io/s/q9o5q0l5nw

我已经在v1.0.0-beta.8中进行了测试,看起来它工作正常(https://codesandbox.io/s/r5nplz89nn)。

项目的立场基本上是&#34; material-ui v0.x是遗留代码&#34;。 所以你的选择要么是;禁用应用程序中的涟漪,通过PR修复它们,或者移动到未完成的v1 beta分支。