1 krixaar 2021-09-29 18:16:09 +08:00 ![]() |
![]() | 2 starsky007 2021-09-29 18:38:54 +08:00 via Android ![]() 最小化的话,万一干坏事呢? |
![]() | 3 wu67 2021-09-29 19:02:49 +08:00 所以我都是直接挂 GitHub 上, 然后通过 gf 发布, 这样他就会直接把我 GitHub 上的源码转过去了, 不存在什么最小化 /压缩 /混淆的问题 |
![]() | 4 autoxbc 2021-09-29 19:07:09 +08:00 确实不能最小化,扩展和油猴都不行,出过好几个加料的案例了 |
![]() | 5 C02TobNClov1Dz56 2021-09-29 22:35:31 +08:00 不要最小化, 防止偷偷加料难以发现. |
![]() | 6 flyhaozi 2021-09-29 22:54:47 +08:00 用户脚本有啥最小化的必要吗 |
![]() | 7 ch2 2021-09-29 23:15:00 +08:00 via iPhone ![]() 你的代码在用户那里只会分发一次,有必要最小化? |
![]() | 8 coolair 2021-09-29 23:31:56 +08:00 谁的电脑都不差这十几 K 的存储吧。 |
![]() | 9 Vegetable 2021-09-29 23:45:06 +08:00 。。。这个道理很难理解吗? |
![]() | 10 RanKaede 2021-09-30 08:54:33 +08:00 不需要网络传输的东西为什么需要最小化呢? |
![]() | 11 Trim21 2021-09-30 10:30:37 +08:00 via Android 用打包工具打包是可以的,压缩是不行的。 (带上一堆打包工具自己的辅助函数也挺破坏可读性的…) |
![]() | 12 bjzhou1990 OP @ch2 base64 函数内置的不好用,用了三方的,我也没必要还专门去把他代码还原回去呀。。。 |
13 seakingii 2021-09-30 11:15:16 +08:00 ![]() |
![]() | 14 ysc3839 2021-09-30 11:49:39 +08:00 |
![]() | 15 0017 2021-09-30 15:39:24 +08:00 @bjzhou1990 这不是风险更大了么,如果三方的里面加料了呢? |
![]() | 16 Indexyz 2021-10-01 07:25:30 +08:00 via Android ![]() @ysc3839 Browser Javascript 内置的 Base64 函数( atob / btoa )不支持 utf8 |
![]() | 17 codehz 2021-10-01 12:48:26 +08:00 ![]() @Indexyz 谁说不支持的,js 的 string 可是很魔法的存在,F12 测试下看看 btoa(Array.from(new TextEncoder().encode("UTF-8 测试")).map(x=>String.fromCharCode(x)).join('')) // "4p2k77iPVVRGLTjmtYvor5U=" new TextDecoder().decode(new Uint8Array(atob("4p2k77iPVVRGLTjmtYvor5U=").split('').map(x=>x.codePointAt(0)))) // UTF-8 测试 |
![]() | 18 codehz 2021-10-01 12:59:13 +08:00 注:得到 4p2k77iPVVRGLTgg5rWL6K+V 是因为 V2EX 加了个空格( |
![]() | 19 UnluckyNinja 2021-10-01 13:23:05 +08:00 不能最小化不能混淆,引用的库尽量 require 官方的 cdn 分发版本,实在没有的话,greasyfork 上有专门的用来作为依赖库的分类,可以找现成的或者自己传,传完再 require,直接嵌入的必须明确说明。总之就是需要你主动来解释代码,不给源码也不说明,相当于放弃为自己的辩护了 1 楼贴的官方规则写的很清楚了:“库是应被 @require 的脚本,除非因为技术原因不能这么做。如果一个库被内嵌入了脚本,那么你必须一并提供库的来源(比如一行评论指向原始地址、名称以及版本)。” |