nodejs外掛程式化框架 minimajs

2022-01-15 00:38:04 字數 1624 閱讀 3730

我們先簡單看一下,如何來使用這個框架。

import  from 'minimajs';

import path from 'path';

let minima = new minima(path.join(__dirname, 'plugins'));

minima.start();

通過這幾行**就可以建立乙個外掛程式框架,並且從當前的plugins目錄下載入外掛程式。

每乙個外掛程式在plugins目錄下,由plugin.json來定義外掛程式的基本資訊、依賴資訊、服務和擴充套件,該檔案必須在外掛程式根目錄下,並且包含。乙個外掛程式由plugin.json和其它檔案構成,其它檔案為可選,可以包括js、html、css檔案等。如下為乙個外掛程式示例。對於plugin.json檔案,除了id是必填屬性,其它均為可選,這意味著最小的外掛程式為乙個只定義了plugin.json且該檔案只宣告外掛程式id。

通osgi規範類似,每乙個外掛程式可以定義乙個啟用器,預設為activator.js,如果命名不是預設值,則需要在plugin.json裡面通過activator定義該啟用器檔名。乙個典型的activator定義如下,用於宣告外掛程式的入口和出口。

import  from 'minimajs';

export default class activator

/*** 外掛程式入口

* * @param context 外掛程式上下文

* @memberof activator

*/start(context)

/*** 外掛程式出口

* * @param context 外掛程式上下文

* @memberof activator

*/stop(context)

}

這裡start與stop分別代表入口和出口,用於服務註冊、繫結、事件監聽等。

外掛程式間通過服務進行通訊,乙個外掛程式註冊服務,乙個外掛程式消費服務。外掛程式註冊可以通過plugin.json來宣告,也可以通過啟用器start方法的plugincontext引數的addservice來註冊服務。如下所示,使用plugin.json來註冊乙個服務。

]

}

另乙個外掛程式,可以通過啟用器來消費服務。

import  from 'minimajs';

export default class activator

/*** 外掛程式入口

* * @param context 外掛程式上下文

這個示例演示了express、art-template、webapi框架、外掛程式動態擴充套件、web輕量框架的構建,詳細可以檢視例項。

Android外掛程式化框架SpeedTools

其實ios在現在外掛程式化android以後也會限制,至少已經開有動作了,例如resource物件建立在android n之後進入了廢棄的行業。外掛程式化其實如果對許可權沒有限制他就是病毒,你想想如果你 外掛程式化原理 按照實現模式來說分為 模式,修改反射hock系統關鍵流程的。按照apk安裝來分有...

VirtualAPK 外掛程式化框架介紹

virtualapk 是乙個 android 外掛程式化框架。如果乙個 apk 有很多功能,其中一些功能使用的場景比較少,那麼可以在這些功能被使用的時候動態載入,而不是一次性打包在整個 apk 中。外掛程式化不僅可以縮小 apk 體積,也方便各個外掛程式特性的動態更新。使用 virtualapk 需...

nodejs 各種外掛程式

dirname 全域性變數,儲存的是檔案所在的檔案目錄 filename 全域性變數,儲存的是檔名 dirname.js console.log dirname 執行node dirname.js 輸出 d nodejs src dirname.js console.log filename 執行n...