提交 faf7aea2 编写于 作者: Y yiminghe

add tree animation

上级 2df23102
...@@ -11,7 +11,7 @@ var Tree = antd.Tree; ...@@ -11,7 +11,7 @@ var Tree = antd.Tree;
var TreeNode = Tree.TreeNode; var TreeNode = Tree.TreeNode;
React.render( React.render(
<Tree defaultExpandAll={true}> <Tree defaultExpandAll={false}>
<TreeNode title="parent 1"> <TreeNode title="parent 1">
<TreeNode title="leaf" /> <TreeNode title="leaf" />
<TreeNode title="parent 1-1"> <TreeNode title="parent 1-1">
......
...@@ -9,62 +9,13 @@ ...@@ -9,62 +9,13 @@
````jsx ````jsx
var Tree = antd.Tree; var Tree = antd.Tree;
var TreeNode = Tree.TreeNode; var TreeNode = Tree.TreeNode;
var velocity = antd.velocity;
function handleCheck(info) { function handleCheck(info) {
console.log('check: ', info); console.log('check: ', info);
} }
const animation = {
enter(node, done){
var ok = false;
function complete() {
if (!ok) {
ok = 1;
done();
}
}
node.style.display='none';
velocity(node, 'slideDown', {
duration: 300,
complete: complete
});
return {
stop: function () {
velocity(node, 'finish');
// velocity complete is async
complete();
}
};
},
leave(node, done){
var ok = false;
function complete() {
if (!ok) {
ok = 1;
done();
}
}
velocity(node, 'slideUp', {
duration: 300,
complete: complete
});
return {
stop: function () {
velocity(node, 'finish');
// velocity complete is async
complete();
}
};
},
};
React.render(<div> React.render(<div>
{React.cloneElement(<Tree defaultExpandAll={true} checkable={true} onCheck={handleCheck}> <Tree defaultExpandAll={true} checkable={true} onCheck={handleCheck}>
<TreeNode title="parent 1"> <TreeNode title="parent 1">
<TreeNode title="leaf" /> <TreeNode title="leaf" />
<TreeNode title="parent 1-1"> <TreeNode title="parent 1-1">
...@@ -75,10 +26,7 @@ React.render(<div> ...@@ -75,10 +26,7 @@ React.render(<div>
<TreeNode title="leaf" /> <TreeNode title="leaf" />
</TreeNode> </TreeNode>
</TreeNode> </TreeNode>
</Tree>, { </Tree>
openAnimation: animation,
})}
</div> </div>
, document.getElementById('components-tree-demo-checkbox')); , document.getElementById('components-tree-demo-checkbox'));
```` ````
import React from 'react'; import React from 'react';
import Tree from 'rc-tree'; import Tree from 'rc-tree';
import velocity from 'velocity-animate';
const animation = {
enter(node, done){
var ok = false;
function complete() {
if (!ok) {
ok = 1;
done();
}
}
node.style.display = 'none';
velocity(node, 'slideDown', {
duration: 300,
complete: complete
});
return {
stop: function () {
velocity(node, 'finish');
// velocity complete is async
complete();
}
};
},
leave(node, done){
var ok = false;
node.style.display = 'block';
function complete() {
if (!ok) {
ok = 1;
done();
}
}
velocity(node, 'slideUp', {
duration: 300,
complete: complete
});
return {
stop: function () {
velocity(node, 'finish');
// velocity complete is async
complete();
}
};
},
};
const AntTree = React.createClass({ const AntTree = React.createClass({
getDefaultProps() { getDefaultProps() {
...@@ -15,7 +67,7 @@ const AntTree = React.createClass({ ...@@ -15,7 +67,7 @@ const AntTree = React.createClass({
if (checkable) { if (checkable) {
checkable = <span className={`${props.prefixCls}-checkbox-inner`}></span>; checkable = <span className={`${props.prefixCls}-checkbox-inner`}></span>;
} }
return <Tree {...props} checkable={checkable}> return <Tree openAnimation={animation} {...props} checkable={checkable}>
{this.props.children} {this.props.children}
</Tree>; </Tree>;
} }
......
...@@ -44,8 +44,6 @@ const antd = { ...@@ -44,8 +44,6 @@ const antd = {
Menu: require('./components/menu') Menu: require('./components/menu')
}; };
antd.velocity = require('velocity-animate');
module.exports = antd; module.exports = antd;
antd.version = require('./package.json').version; antd.version = require('./package.json').version;
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册