zoukankan      html  css  js  c++  java
  • 热修复JSPatch之实战教程

      接上篇《热修复JSPatch之接口设计》,在这篇文章主要给大家讲述一下怎样高速具备热修复能力,当然了假设有人有志于把JSPatch系统的学习,甚至用JSPatch进行开发的。就没有必要听我在这里啰嗦了。

    简单了解下JSPatch语法

      我这里仅仅介绍一些简单经常使用的。

    1. require
    
    在使用Objective-C类之前须要调用 require('className’) :
    
    
    require('UIView')
    var view = UIView.alloc().init()
    
    
    
    
    能够用逗号 , 分隔,一次性导入多个类:
    
    
    require('UIView, UIColor')
    var view = UIView.alloc().init()
    var red = UIColor.redColor()
    
    
    
    
    或者直接在使用时才调用 require() :
    
    
    require('UIView').alloc().init()
    
    
    
    
    2. 调用OC方法
    
    调用类方法
    
    
    var redColor = UIColor.redColor();
    
    
    
    
    调用实例方法
    
    
    var view = UIView.alloc().init();
    view.setNeedsLayout();
    
    
    
    
    參数传递
    
    跟在OC一样传递參数:
    
    
    var view = UIView.alloc().init();
    var superView = UIView.alloc().init()
    superView.addSubview(view)
    
    
    
    
    
    
    
    Property
    
    获取/改动 Property 等于调用这个 Property 的 getter / setter 方法。获取时记得加 ():
    
    
    view.setBackgroundColor(redColor);
    var bgColor = view.backgroundColor();
    
    
    
    
    方法名转换
    
    多參数方法名使用 _ 分隔:
    
    
    var indexPath = require('NSIndexPath').indexPathForRow_inSection(0, 1);
    
    
    
    
    若原 OC 方法名里包括下划线 _,在 JS 使用双下划线 __ 取代:
    
    
    // Obj-C: [JPObject _privateMethod];
    JPObject.__privateMethod()
    
    
    
    
    3.defineClass
    
    API
    
    qqqq defineClass(classDeclaration, instanceMethods, classMethods)
    
    @param classDeclaration: 字符串,类名/父类名和Protocol
    @param instanceMethods: 要加入或覆盖的实例方法
    @param classMethods: 要加入或覆盖的类方法

    在使用的过程中发现property属性命名,方法命名要严格依照驼峰式命名,禁止在属性名,或者方法名中间使用下划线'_' 此处要格外注意哦,血的教训积累出来的经验。假设使用了。会造成无法修复
    假设想查看完整的教程能够点击查看

    在实践的过程中发现,大部分人对于js方法不是非常熟悉,写起来非常慢,给大家找到了转换的站点转换站点地址

    当然,转换后,我们是不能直接拿来用的,还是用非常多的问题。比方宏定义无法使用,相关方法转换错误,js语法错误等等,我们能够使用以下的一个站点来进行js语法校验 js校验网址

    通过上面的转换。校验。我们開始尝试在本地修复我们的bug。假设能够修复,并经过測试后,我们就能够上传我们的热修复脚本了。感兴趣的小伙伴能够尝试一下哦。以下是我写的一个小demo。 JSPatch修复demo

  • 相关阅读:
    浅浅的分析下es6箭头函数
    css实现背景半透明文字不透明的效果
    五星评分,让我告诉你半颗星星怎么做
    微信小程序--成语猜猜看
    微信小程序开发中如何实现侧边栏的滑动效果?
    强力推荐微信小程序之简易计算器,很适合小白程序员
    swing _JFileChooser文件选择窗口
    file类简单操作
    序列化对象
    MessageBox_ swt
  • 原文地址:https://www.cnblogs.com/llguanli/p/8453050.html
Copyright © 2011-2022 走看看