Add convert compatible of NSString for bridge message data (#24630)

Summary:
Fixes https://twitter.com/estevao_lucas/status/1117572702083190785?s=215 in #24626 . Now we try to convert any id to `NSString`, not throw error.

cc. cpojer .

[iOS] [Fixed] - Add convert compatible of NSString for bridge message data
Pull Request resolved: https://github.com/facebook/react-native/pull/24630

Differential Revision: D15120205

Pulled By: cpojer

fbshipit-source-id: 4849a8e941410b292f971608a9cdb38c11502445
This commit is contained in:
zhongwuzw 2019-04-29 06:33:02 -07:00 коммит произвёл Facebook Github Bot
Родитель 382f088fb0
Коммит ffa3b0d4d6
1 изменённых файлов: 10 добавлений и 1 удалений

Просмотреть файл

@ -53,12 +53,21 @@ RCT_NUMBER_CONVERTER(NSUInteger, unsignedIntegerValue)
RCT_JSON_CONVERTER(NSArray)
RCT_JSON_CONVERTER(NSDictionary)
RCT_JSON_CONVERTER(NSString)
RCT_JSON_CONVERTER(NSNumber)
RCT_CUSTOM_CONVERTER(NSSet *, NSSet, [NSSet setWithArray:json])
RCT_CUSTOM_CONVERTER(NSData *, NSData, [json dataUsingEncoding:NSUTF8StringEncoding])
+ (NSString *)NSString:(id)json
{
if ([json isKindOfClass:NSString.class]) {
return json;
} else if (json && json != (id)kCFNull) {
return [NSString stringWithFormat:@"%@",json];
}
return nil;
}
+ (NSIndexSet *)NSIndexSet:(id)json
{
json = [self NSNumberArray:json];