美文网首页
JSPatch 初体验 ——各种坑和工具、文章(不定期更新)

JSPatch 初体验 ——各种坑和工具、文章(不定期更新)

作者: vincent涵 | 来源:发表于2016-04-27 16:41 被阅读607次

前言:前阵子项目刚上线很闲,自己学新东西,突然发现一个很牛的东东——JSPatch, 线上直接改BUG的利器啊(直接用来写模块个人现在还没那技术,而且React native会更好,虽然我不会),虽然一点都不懂JS,但是不需要审核,直接线上改bug的诱惑太大了,果断花两天时间学了下JS大体懂了,然后开始研究JSPatch。


工具

首先先把几个很好用的工具和文章贴在下面,工欲善其事必先利其器,有了这几个工具和前人经验文章,保证你少走大量弯路.(强烈推荐使用文章里让打开的js断点调试,非常有用!!!)

1、JSPatch专用 OC 转化 JS工具(虽然很多并不准确,不过初学者用它比一下一下打方便多了,可以类似用翻译软件翻译英文一样,先翻译再改不对的地方):JSPatchConvertor
2、JSPatchX —— JSPatch专用Xcode自动补全插件:JSPatchX
3、JSPatch 基础用法 : JSPatch 基础用法
4、JSPatch 常见问题 : JSPatch 常见问题
5、简书上的两篇前辈总结经验:使用JSPatch问题若干及解决方法 iOS开发 — JSPatch


各种坑

(虽然都是因为没有认真仔细看JSPatch基础用法导致的,原谅我比较心急,直接就像上手开始用)

1.私有成员变量不能直接访问,必须用valueForKey 或者 setValue_forKey调用。比如:

self.valueForKey("_moreModelArray").count(); self.setValue_forKey(NSMutableArray.array(), "_vcArray");

2.JS数组、字典、字符串等等和OC的都不一样
详见工具里面的文章,不具体说了,都是泪

3.JS不能识别枚举,比如:

_pageViewController = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStylePageCurl navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:0];

UIPageViewControllerTransitionStylePageCurl和UIPageViewControllerNavigationOrientationHorizontal全部都不能识别啊有木有!!!所以我默默的都直接改成了对应的枚举值

var pageViewController = UIPageViewController.alloc().initWithTransitionStyle_navigationOrientation_options(0, 0, 0);

4.必须在require里面声明了相关类,才能使用相应方法,一般写在main.js的最上面,比如:

require('NSMutableArray,NSString,UIPageViewController, NSKeyedUnarchiver, FSProductFirstViewController, FSProductMoreDetailViewController, UIScreen');
  1. CGRect也是一个坑,最多的是在设置frame的时候,比如:
    view.frame.origin.x
    在js应该写成:view.frame().x (特别注意不是view.frame().origin().x)
    CGRectMake(20, 20, 100, 100)
    应该写成:{x:20, y:20, width:100, height:100}

相关文章

  • JSPatch 初体验 ——各种坑和工具、文章(不定期更新)

    前言:前阵子项目刚上线很闲,自己学新东西,突然发现一个很牛的东东——JSPatch, 线上直接改BUG的利器啊(直...

  • 使用JSPatch问题若干及解决方法

    最近用上了JSPatch,好用是好用,但是因为JS不熟还是踩到许多坑,浪费了不少时间。这里做个记录,不定期更新。 ...

  • JSPatch问题若干及解决方法

    最近用上了JSPatch,好用是好用,但是因为JS不熟还是踩到许多坑,浪费了不少时间。这里做个记录,不定期更新。B...

  • 微信小程序的坑

    总结下当前遇到的小程序的各种坑,不定期更新 1、授权出现'thirdscripterror cannot set ...

  • 工具

    此篇文章用来总结生信相关工具,不定期更新。 Github DownGit[https://minhaskamal....

  • 逆天战神准备开坑了!

    逆天战神准备开坑了,我会不定期更新,学生党,所以更新慢请见谅

  • 集成JSPatch遇到的问题总结

    何为JSPatch这里就不在赘述,本文主要讲解下,集成JSPatch过程和遇到的坑. 1,需要导入的框架 a...

  • JSPatch使用随笔

    JSPatch注意事项 本篇文章记录JSPatch热修复时遇到的问题,不定时更新~ 1. block传递及执行 J...

  • 我喜欢的优秀开源项目

    1.热更新 JSPatch。 网址:http://jspatch.com,优势,持续更新升级,有详细使用文档。 2...

  • JSPatch初体验

    热修复JSPatch: 这篇简书是个不错的参考JSPatch简介 然后就是官网 不会JS也没关系OC转JS,当然复...

网友评论

      本文标题:JSPatch 初体验 ——各种坑和工具、文章(不定期更新)

      本文链接:https://www.haomeiwen.com/subject/trpcrttx.html