Commit 4d8b148 1 parent dbea448 commit 4d8b148 Copy full SHA for 4d8b148
File tree 3 files changed +17
-3
lines changed
3 files changed +17
-3
lines changed Original file line number Diff line number Diff line change @@ -48,15 +48,15 @@ - (NSInvocation *)invoke
48
48
}
49
49
if (![moduleInstance respondsToSelector: selector] && [self .methodName isEqualToString: @" addEventListener" ]) {
50
50
if ([self .arguments[0 ] isKindOfClass: [NSString class ]] && [self .arguments count ] == 3 ) {
51
- [self .instance addModuleEventObservers: self .arguments[0 ] callback: self .arguments[1 ] option: self .arguments[2 ] moduleClassName: NSStringFromClass (moduleClass)];
52
- return nil ;
51
+ [self .instance _addModuleEventObserversWithArguments: self .arguments moduleClassName: NSStringFromClass (moduleClass)];
53
52
}
53
+ return nil ;
54
54
}
55
55
if (![moduleInstance respondsToSelector: selector] && [self .methodName isEqualToString: @" removeAllEventListeners" ]) {
56
56
if ([self .arguments count ] &&[self .arguments[0 ] isKindOfClass: [NSString class ]]) {
57
57
[self .instance removeModuleEventObserver: self .arguments[0 ] moduleClassName: _moduleName];
58
- return nil ;
59
58
}
59
+ return nil ;
60
60
}
61
61
62
62
NSInvocation *invocation = [self invocationWithTarget: moduleInstance selector: selector];
Original file line number Diff line number Diff line change @@ -395,6 +395,19 @@ - (BOOL)checkModuleEventRegistered:(NSString*)event moduleClassName:(NSString*)m
395
395
396
396
#pragma mark Private Methods
397
397
398
+ - (void )_addModuleEventObserversWithArguments : (NSArray *)arguments moduleClassName : (NSString *)moduleClassName
399
+ {
400
+ if ([arguments count ] < 2 ) {
401
+ WXLogError (@" please check your method parameter!!" );
402
+ return ;
403
+ }
404
+ NSMutableArray * methodArguments = [arguments mutableCopy ];
405
+ if ([arguments count ] == 2 ) {
406
+ [methodArguments addObject: @{@" once" : @false }];
407
+ }
408
+ [self addModuleEventObservers: methodArguments[0 ] callback: methodArguments[1 ] option: methodArguments[2 ] moduleClassName: moduleClassName];
409
+ }
410
+
398
411
- (void )addModuleEventObservers : (NSString *)event callback : (NSString *)callbackId option : (NSDictionary *)option moduleClassName : (NSString *)moduleClassName
399
412
{
400
413
BOOL once = [[option objectForKey: @" once" ] boolValue ];
Original file line number Diff line number Diff line change 22
22
@property (nonatomic , readonly , strong ) WXComponentManager *componentManager;
23
23
24
24
- (void )addModuleEventObservers : (NSString *)event callback : (NSString *)callbackId option : (NSDictionary *)option moduleClassName : (NSString *)moduleClassName ;
25
+ - (void )_addModuleEventObserversWithArguments : (NSArray *)arguments moduleClassName : (NSString *)moduleClassName ;
25
26
- (void )removeModuleEventObserver : (NSString *)event moduleClassName : (NSString *)moduleClassName ;
26
27
27
28
@end
You can’t perform that action at this time.
0 commit comments