使用 rollup.js 模块化编写 GM 脚本 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
wdssmq

使用 rollup.js 模块化编写 GM 脚本

  •  
  •   wdssmq
    wdssmq 2022 年 5 月 5 日 2218 次点击
    这是一个创建于 1451 天前的主题,其中的信息可能已经有所发展或是发生改变。

    针对同一个网站的脚本功能比较多的话果然还是拆分成多个文件比较方便;

    可参考 empty_def 组织你的初始模板,之后复制使用就好;

    ==UserScript== …… ==/UserScript==部分写在src/__info.js里;

    userscript/empty_def:https://github.com/wdssmq/userscript/tree/master/empty_def

    userscript/bilibili:https://github.com/wdssmq/userscript/tree/master/bilibili「历史原因,导出文件还是later.user.js,要不要改呢」

    B 币领取提醒:https://github.com/wdssmq/userscript/blob/master/bilibili/src/_bcoin.js「只是提醒,并不能自动领」

    超级废话版说明:

    「折腾」使用 rollup.js 模块化编写 GM 脚本_电脑网络_沉冰浮水:

    https://www.wdssmq.com/post/20120627834.html

    相关阅读:

    打包工具 rollup.js 入门教程 - 阮一峰的网络日志:

    http://www.ruanyifeng.com/blog/2022/05/rollup.html

    第 1 条附言    2022 年 5 月 5 日
    使用时遇到点儿问题,不知道是我姿势不对还是什么情况;

    about tree-shaking Issue #4488 rollup/rollup

    https://github.com/rollup/rollup/issues/4488

    --no-treeshake 相关的参数都试过,然而好像并没有哪个能符合我的需求;
    6 条回复    2022-05-07 18:10:15 +08:00
    autoxbc
        1
    autoxbc  
       2022 年 5 月 5 日
    我是另一种习惯,把所有网站的脚本放在同一个文件里,有一万两千行
    wdssmq
        2
    wdssmq  
    OP
       2022 年 5 月 5 日
    @autoxbc #1 [惊恐]
    lisongeee
        3
    lisongeee  
       2022 年 5 月 7 日
    wdssmq
        4
    wdssmq  
    OP
       2022 年 5 月 7 日
    @lisongeee #3

    2214962083/rollup-tampermonkey: rollup+typescript+vue+less to build tampermonkey scripts
    https://github.com/2214962083/rollup-tampermonkey

    我了解过类似的项目,感觉过于复杂了,我的方案只需要一份 rollup.config.js 和若干 src/*.js 就可以,也适合把多个脚本项目塞进同一个 git 库里。。
    lisongeee
        5
    lisongeee  
       2022 年 5 月 7 日
    @wdssmq

    你想要的效果是多个脚本聚合在一个仓库,确实不适合用我这个单个的。但是我看你发的这个 https://github.com/2214962083/rollup-tampermonkey 开发体验明显没有 https://github.com/lisonge/vite-plugin-monkey.git 方便啊
    wdssmq
        6
    wdssmq  
    OP
       2022 年 5 月 7 日
    @lisongeee #5

    至少在文件数量上对于来说是一个方向的 /doge ;

    寻求解决方案时就是这样,会找到一些相关的东西,知道其「存在」;

    然后根据自身需要挑选一些进行「试用」,最后确定它「能用」以及「合用」;

    看别人的脚本项目发现有用 rollup 这个东西,以其为关键词搜索找到了上边项目,但是太繁杂了,然后发现 rollup.js 自身就能符合我的需求;
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1427 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 32ms UTC 16:59 PVG 00:59 LAX 09:59 JFK 12:59
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86