初见

URLNavigator 使用及思考

2018-06-04  本文已影响451人  Dimon_Hu

起头

最近听说swift要开始稳定API了,后期应该没啥大变化了。总算可以放心使用了,从swift2.0开始写过一个项目后,有点后怕了。因为swift编译慢,特别慢;每次打包包还特别大,MacMini整的嗷嗷叫;写代码的时候莫名其妙的报错,然后编译两遍又过了。加上公司项目比较急。最后还是用Object-C来完成项目。

一直在关注,却一直未去尝试,就像暗恋一个姑娘,明明很喜欢,但她的小脾气,让我望而却步;
看到swift3.0与4.1变化不大,总算放心开始使用swift写项目了。
swift有啥合适的router控件呢?经过一个小时的查找,找到了devxoul/URLNavigator
这个第三方,一看小伙子,你还是很6呀1.6k+的赞,不用你用谁?
然后就延伸到下面的问题;

为啥要用URLNavigator ?

如何使用

使用步骤;
  1. 第一步
1. 在项目的PodFile文件中添加 pod 'URLNavigator'
2. pod install

项目中就导入了我们的URLNavigator;

  1. 第二步;
    创建NavigationMap文件
    在项目中导入模块文件
import UIKit
import URLNavigator
  1. 第三步 修改文件;
enum NavigationMap {

}
  1. 将视图控制器注册到URL模式
    navigator.register("navigator://user/<username>") { url, values, context in
      guard let username = values["username"] as? String else { return nil }
      return UserViewController(navigator: navigator, username: username)
    }

跳转

self.navigator.push("navigator://mine/6666")
//或者
self.navigator.present("navigator://mine/6666");

局限,如何扩展;

  1. 目前最大的局限可能是只能传单字符;
  2. 传对象也不行;
  3. 字典的话,其实也很方便传过去;但是感觉这种URL的方式不是特别好;作者也没具体的工具,需要自己扩展;
  4. pop的方法也没有

下面为大家讲解,并扩展一些方法,让大家使用更方便;

上一篇 下一篇

猜你喜欢

热点阅读