V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wuchangming89
V2EX  ›  前端开发

微信小程序实现热更新

  •  
  •   wuchangming89 ·
    wuchangming · 2022-02-17 16:35:05 +08:00 · 3191 次点击
    这是一个创建于 1046 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近研究低代码时遇到个问题,微信小程序不能动态更新,变成很多方案不可越过的坎。所以有了目前的方案。

    首先,灵感来源这篇文章: https://zhuanlan.zhihu.com/p/34191831

    另外借助 Taro3 React 的动态化能力「 Remax 应该也可以,但还没用过」,其实可以进一步提升动态配置能力「 UI + 逻辑其实都可以进行热更新」。

    对于低代码平台来说 react-interpreter 带来的局部热更新应该是够用了。不过项目也是刚写完,如果要用在生产环境需要完备测试。

    项目地址: https://github.com/wuchangming/react-interpreter

    8 条回复    2022-04-01 15:46:37 +08:00
    yaphets666
        1
    yaphets666  
       2022-02-17 16:56:36 +08:00
    伪需求,需要经常更新的页面请用 web-view 。用不了 web-view 的,当你的小程序已经用户庞大到需要热更新,就可以联系微信,给你的小程序安排 vip 通道,审核通过时间是分钟级别的。
    wuchangming89
        2
    wuchangming89  
    OP
       2022-02-17 17:06:06 +08:00
    @yaphets666 ,大部分场景确实是伪需求。只是最近在做跨端项目的低代码平台,其中涉及小程序这一端,由于审核机制导致这个端不能和其他端「 Web 、RN 」同步发布,要引入别的步骤,所以有了这个想法。
    JenJieJu
        3
    JenJieJu  
       2022-02-17 17:54:00 +08:00
    性能怎么样?我测试过 eval5 性能最多只有原来的 60%
    ch2
        4
    ch2  
       2022-02-17 18:10:23 +08:00 via iPhone
    试一试
    wuchangming89
        5
    wuchangming89  
    OP
       2022-02-18 09:44:49 +08:00
    @JenJieJu 因为要先解析 ast ,性能是会差点。用的时候确实也是要分场景,特别吃性能的页面就不推荐了
    JenJieJu
        6
    JenJieJu  
       2022-02-18 10:55:40 +08:00
    除了 js 的问题,css 楼主有方案吗?小程序不支持动态引用 css 文件
    wuchangming89
        7
    wuchangming89  
    OP
       2022-02-18 11:15:30 +08:00
    em... 如果是基于 Taro 3 之类 React 的框架就 CSS in JS 吧 😂。不过原生 css 也是类似 js 可以先解析成 ast 后再和框架结合进行处理,但我确实没研究过,感觉开发成本比较大。
    zycode277
        8
    zycode277  
       2022-04-01 15:46:37 +08:00
    赞 最近也在做这方面的尝试
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   942 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 19:08 · PVG 03:08 · LAX 11:08 · JFK 14:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.