|
16 | 16 | 'use strict';
|
17 | 17 | var React = require('react');
|
18 | 18 | var classNames = require('classnames');
|
19 |
| - |
20 | 19 | var ReactPropTypes = React.PropTypes;
|
21 | 20 |
|
22 |
| -var ThreadListItem = React.createClass({ |
23 |
| - |
24 |
| - propTypes: { |
25 |
| - thread: ReactPropTypes.object, |
26 |
| - currentThreadID: ReactPropTypes.string |
27 |
| - }, |
| 21 | +var ThreadListItem = function (props) { |
| 22 | + var thread = props.thread; |
| 23 | + var lastMessage = thread.lastMessage; |
| 24 | + var classSet = classNames({ |
| 25 | + 'thread-list-item': true, |
| 26 | + 'active': props.isActive |
| 27 | + }); |
| 28 | + return ( |
| 29 | + <li className={classSet}> |
| 30 | + <h5 className="thread-name">{thread.name}</h5> |
| 31 | + <div className="thread-time"> |
| 32 | + {(new Date(lastMessage.timestamp)).toTimeString()} |
| 33 | + </div> |
| 34 | + <div className="thread-last-message"> |
| 35 | + {lastMessage.text} |
| 36 | + </div> |
| 37 | + </li> |
| 38 | + ); |
| 39 | +}; |
28 | 40 |
|
29 |
| - render: function() { |
30 |
| - var thread = this.props.thread; |
31 |
| - var lastMessage = thread.lastMessage; |
32 |
| - var classSet = classNames({ |
33 |
| - 'thread-list-item': true, |
34 |
| - 'active': this.props.isActive |
35 |
| - }); |
36 |
| - return ( |
37 |
| - <li className={classSet}> |
38 |
| - <h5 className="thread-name">{thread.name}</h5> |
39 |
| - <div className="thread-time"> |
40 |
| - {(new Date(lastMessage.timestamp)).toTimeString()} |
41 |
| - </div> |
42 |
| - <div className="thread-last-message"> |
43 |
| - {lastMessage.text} |
44 |
| - </div> |
45 |
| - </li> |
46 |
| - ); |
47 |
| - }, |
48 |
| -}); |
| 41 | +ThreadListItem.propTypes = { |
| 42 | + thread: ReactPropTypes.object, |
| 43 | + currentThreadID: ReactPropTypes.string |
| 44 | +}; |
49 | 45 |
|
50 | 46 | module.exports = ThreadListItem;
|
0 commit comments