ant-design/scripts/demo.js

51 lines
1.5 KiB
JavaScript
Raw Normal View History

2015-07-07 15:39:21 +08:00
window['css-animation'] = require('css-animation');
2015-07-09 17:47:21 +08:00
window['react-router'] = window.ReactRouter;
2015-07-21 16:05:13 +08:00
var antd = require('antd');
2015-07-14 20:16:05 +08:00
var $ = require('jquery');
var React = require('react');
$(function () {
// auto complete for components
var Select = antd.Select;
var Option = Select.Option;
// 获取搜索数据
var searchData = window.ANT_COMPONENTS;
var AutoComplete = React.createClass({
getOptions() {
return searchData.map(function (s) {
2015-07-22 20:57:27 +08:00
return <Option sData={s} key={s.title} text={'跳转到 ' + s.title}>
2015-07-14 20:16:05 +08:00
<strong>{s.title}</strong>
2015-07-21 16:05:13 +08:00
&nbsp;
2015-07-14 20:16:05 +08:00
<span>{s.desc}</span>
</Option>;
});
},
handleSelect(value) {
location.pathname = '/components/' + value.replace(/([a-z])([A-Z])/g, function (m, m1, m2) {
return m1 + '-' + m2;
}).toLowerCase();
},
filterOption(input, option) {
return option.props.sData.title.toLowerCase().indexOf(input.toLowerCase()) !== -1 || option.props.sData.desc.indexOf(input) !== -1;
},
render() {
2015-07-15 20:47:04 +08:00
return <Select combobox style={{width: 200}}
onSelect={this.handleSelect}
2015-07-22 20:57:27 +08:00
optionLabelProp="text"
2015-07-14 20:16:05 +08:00
dropdownMenuStyle={{maxHeight: 200, overflow: 'auto'}}
2015-07-15 20:47:04 +08:00
searchPlaceholder="搜索组件..."
2015-07-14 20:16:05 +08:00
renderDropdownToBody={true}
filterOption={this.filterOption}>{this.getOptions()}</Select>;
}
});
React.render(<AutoComplete/>, document.getElementById('autoComplete'));
});
2015-07-21 16:05:13 +08:00
module.exports = antd;