苹果开发中文网站组件化方案调研(16)
[self.viewaddSubview:btn];
}
//调用组件B的功能
-(void)btn_click{
[[URL_RouetersharedInstance]openURL:@"test://B_Action"withParam:@{@"para1":@"PARA1",@"para2":@(222),@"para3":@(333),@"para4":@(444)}];
}
-(void)action_A:(NSString*)para1{
NSLog(@"callaction_A:%@",para1);
}
@end组件B实现的代码类似 , 就不在贴了 。 上面都是简化版的实现 , 不过核心原理是一样的 。
从上面的代码可以看出来 , 实现原理很简单:每个组件在自己的load方面里面 , 把自己对外提供的服务(回调block)通过url-scheme标记好 , 然后注册到URL-Router里面 。
URL-Router接受各个组件的注册 , 用字典保存了每个组件注册过来的url和对应的服务 , 只要其他组件调用了openURL方法 , 就会去这个字典里面根据url找到对应的block执行(也就是执行其他组件提供的服务)
存在的问题
通过url-scheme的方式去做组件化主要存在如下一些问题:
推荐阅读
- 高圆圆|高圆圆现身扫楼生图曝光!穿紧身裙臀部凸出显眼,脸上苹果肌饱满
- 周也|17岁爆红,从“红苹果女主”到“卖货柜姐”,她怎么落魄成这样了?
- 奥斯卡|长泽雅美主持“日本奥斯卡”发布会,玫瑰粉无袖裙显胖苹果肌饱满,木村落选
- 苹果肌|济南海峡整形科普:关于玻尿酸那些事你都了解吗?
- 红苹果乐园|钟汉良果然是我妈最爱!《今生有你》首播夺冠,中年爱情太好磕了
- |洪成成更新频率太高引粉丝担忧,在小号公开发与男友甜蜜合照
- 家族荣耀|大衣哥儿子笑了,与相亲对象分食一个苹果,陈亚男心里是啥滋味?
- 陈亚男|复合无望!陈父再次公开发文,为女儿喊冤,此前被曝动手打朱小伟
- 陈亚男|陈亚男离婚风波后,其父亲再次公开发文,为女儿喊冤:她是无辜的
- 张纪中|让道具老师上街找了一夜的苹果,加戏删戏太随意!张纪中:太难搞
