scriptcat icon indicating copy to clipboard operation
scriptcat copied to clipboard

[BUG] @require 内容过大的本地文件需要刷新2次才能更新最新内容

Open enncy opened this issue 3 months ago • 1 comments

问题描述

在本地脚本调试构建时 @require 大文件例如 lodash 未压缩版本600kb 有时候将近耗时十几秒才能加载最新内容,甚至有时候不论等多久第一次刷新都不会是最新文件内容,刷新第二次才行。

而小文件例如 lodash 的压缩版本 70kb ,每次刷新都会是最新的内容。

推测跟读取方法有关。

重现步骤

如视频所见:

https://github.com/user-attachments/assets/1acafb1d-49f4-4ea0-8e81-b92a89a8321d

测试脚本(不用在意文件名,仅用于测试)

// ==UserScript==
// @name         New Userscript ONQW-1
// @namespace    https://docs.scriptcat.org/
// @version      0.1.0
// @description  try to take over the world!
// @author       You
// @match        https://docs.ocsjs.com/
// @icon         https://www.google.com/s2/favicons?sz=64&domain=docs.ocsjs.com
// @grant        none
// @require      file:///A:\VSCode\code\scriptcat-local-file-issue-vite-test\dist\index.js
// @require      file:///A:\VSCode\code\scriptcat-local-file-issue-vite-test\dist\ocs.js
// ==/UserScript==

(function() {
    'use strict';  
    // 无代码,看视频输出
})();

脚本猫版本

1.1.2

操作系统以及浏览器信息

142.0.7444.60

补充信息 (选填)

补充一下,如果在本地文件后面添加刷新参数例如 ?t=xxx, 则会正常更新内容

enncy avatar Nov 07 '25 08:11 enncy

这个无解 浏览器插件不可能每分每秒读取你硬碟所有档案的变更

是要两次的

不是 @require 大小问题 是ScriptCat只能在你载入脚本时看看有没有改动。有改动就下次更新 ScriptCat总不能卡住你的浏览器强迫读取最新档案

cyfung1031 avatar Nov 07 '25 12:11 cyfung1031