Greasy Fork is available in English.

ExtMan

A Simple Extension Manager

สคริปต์นี้ไม่ควรถูกติดตั้งโดยตรง มันเป็นคลังสำหรับสคริปต์อื่น ๆ เพื่อบรรจุด้วยคำสั่งเมทา // @require https://update.greasyfork.org/scripts/441384/1027332/ExtMan.js

ผู้เขียน
CKylinMC
เวอร์ชัน
1.0
สร้างเมื่อ
12-03-2022
อัปเดตเมื่อ
12-03-2022
สัญญาอนุญาต
GPLv3 License

独立用户脚本做附加模块框架。Host和Module都需要引用此脚本。

Host:

const ExtMan = unsafeWindow.getExtMan();
const ext = new ExtMan({
    name: "YourHostScriptNamespace",
    requiredProperties:{// specify this for module precheck or leave this empty object to skip precheck
        name:"string",
        version:"string",
        onhook: (prop, fullmodule, propname)=>true // custom checker
    }
});
ext.getAllModules();// get all registered module with precheck, return an array

External Module:

const ExtMan = unsafeWindow.getExtMan();
const ext = new ExtMan({
    name: "TheNamespaceOfYourHostScript",
});
ext.registerModule({// register your module with object like this. Make sure your module script load before the host script!
    name: "...",
    //...
});