@@ -26,6 +26,7 @@ import ChatActivity from './chat_activity';
2626import Modal from 'react-native-root-modal' ;
2727var JMessageHelper = NativeModules . JMessageHelper ;
2828var _convList = [ ] ;
29+ var convReducer ;
2930
3031export default class Conv extends Component {
3132
@@ -38,6 +39,7 @@ export default class Conv extends Component {
3839 showAddFriendDialog : false ,
3940 showDelConvDialog : false ,
4041 title : '' ,
42+ rowID : '' ,
4143 scaleAnimation : new Animated . Value ( 1 ) ,
4244 y : new Animated . Value ( 0 ) ,
4345 friendId : '' ,
@@ -54,6 +56,7 @@ export default class Conv extends Component {
5456 this . renderRow = this . renderRow . bind ( this ) ;
5557 this . longPressRow = this . longPressRow . bind ( this ) ;
5658 this . pressRow = this . pressRow . bind ( this ) ;
59+ this . delConvClick = this . delConvClick . bind ( this ) ;
5760 }
5861
5962 componentWillMount ( ) {
@@ -64,16 +67,9 @@ export default class Conv extends Component {
6467
6568 componentDidMount ( ) {
6669 const { loadConversations } = this . props . actions ;
70+ const { conversationList } = this . props . state ;
6771 loadConversations ( ) ;
68- // JMessageHelper.getConvList((result) => {
69- // _convList = JSON.parse(result);
70- // this.setState({
71- // isLoading: false,
72- // dataSource: this.getDataSource(_convList),
73- // });
74- // }, () => {
75- // this.setState({isLoading: false});
76- // });
72+
7773 JMessageHelper . checkNetwork ( ( value ) => {
7874 this . setState ( { disconnected : value } ) ;
7975 } ) ;
@@ -156,6 +152,7 @@ export default class Conv extends Component {
156152 longPressRow ( rowID : number ) {
157153 if ( ! this . state . showDelConvDialog && ! this . state . showAddFriendDialog ) {
158154 console . log ( 'rowID ' + rowID + ' long pressed!' ) ;
155+ this . setState ( { rowID : rowID } ) ;
159156 Animated . spring ( this . state . scaleAnimation , {
160157 toValue : 1
161158 } ) . start ( ( ) => this . setState ( {
@@ -211,11 +208,14 @@ export default class Conv extends Component {
211208 addFriend ( ) {
212209 const { addFriend } = this . props . actions ;
213210 addFriend ( this . state . friendId ) ;
214- const { fetching } = this . props . state ;
215- if ( ! fetching ) {
211+ var adding = convReducer . adding ;
212+ var error = convReducer . error ;
213+ console . log ( 'adding: ' + adding ) ;
214+ if ( adding !== undefined && ! adding ) {
216215 this . dismissAddFriendDialog ( ) ;
216+ } else if ( error !== undefined && error ) {
217+ this . setState ( { friendId : '' } ) ;
217218 }
218-
219219 // JMessageHelper.addFriend(this.state.friendId, (result) => {
220220 // this.dismissAddFriendDialog();
221221 // var newDs = JSON.parse(result);
@@ -242,9 +242,11 @@ export default class Conv extends Component {
242242 } ) ;
243243 }
244244
245- deleteConversation ( ) {
246-
247- this . dismissDelConvDialog ( ) ;
245+ delConvClick ( ) {
246+ const { deleteConversation } = this . props . actions ;
247+ var conversation = _convList [ this . state . rowID ] ;
248+ deleteConversation ( conversation , this . state . rowID ) ;
249+ this . dismissDelConvDialog ( ) ;
248250 }
249251
250252 dismissDelConvDialog ( ) {
@@ -256,7 +258,6 @@ export default class Conv extends Component {
256258 render ( ) {
257259 const { conversationList } = this . props . state ;
258260 _convList = conversationList . convList ;
259- console . log ( 'conversationList: ' + conversationList ) ;
260261 var content = conversationList . dataSource . length === 0 ?
261262 < View style = { styles . container } >
262263 { conversationList . fetching && < View style = { { alignItems : 'center' , justifyContent : 'center' } } >
@@ -354,7 +355,7 @@ export default class Conv extends Component {
354355 < TouchableHighlight style = { { position : 'absolute' , bottom : 0 , left : 0 , right : 0 ,
355356 paddingTop : 10 , paddingBottom : 10 , paddingLeft : 20 } }
356357 underlayColor = { '#dddddd' }
357- onPress = { this . deleteConversation } >
358+ onPress = { this . delConvClick } >
358359 < Text style = { { fontSize : 18 , color : '#4e4e4e' } } >
359360 删除该聊天
360361 </ Text >
0 commit comments