W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Extension 作為 Notadd Framework 的一個(gè)特性存在,允許通過(guò) Extension 的方式對(duì) Notadd Framework 進(jìn)行功能或模板的擴(kuò)展。 Extension 的機(jī)制類似于 Laravel 中 Service Provider 的機(jī)制,提供了一種實(shí)現(xiàn)組件化的機(jī)制,并可以實(shí)現(xiàn)傳統(tǒng)插件機(jī)制中的安裝、卸載以及插件啟動(dòng)過(guò)程。
一個(gè)完整的 Notadd Extension ,必然是遵循 Composer 相關(guān)規(guī)范的 Package。
插件位于目錄 extensions 下,插件目錄結(jié)構(gòu)如下
vendor | 廠商目錄 |
---|---|
-extension | 插件目錄 |
--configuations | 可加載配置文件目錄 |
--resources | 資源目錄 |
---translations | 翻譯文件目錄 |
---views | 視圖目錄 |
--src | 源碼目錄 |
---Extension | 擴(kuò)展服務(wù)提供者定義文件 |
--composer.json | Composer 配置文件 |
Extension 的機(jī)制類似于 Laravel 中 Service Provider 的機(jī)制,提供了一種實(shí)現(xiàn)組件化的機(jī)制,并可以實(shí)現(xiàn)傳統(tǒng)插件機(jī)制中的安裝、卸載以及插件啟動(dòng)過(guò)程。
一個(gè)完整的 Notadd Extension ,必然是遵循 Composer 相關(guān)規(guī)范的 Package。
插件位于目錄 extensions 下,插件目錄結(jié)構(gòu)如下
vendor | 廠商目錄 |
---|---|
-extension | 插件目錄 |
--configuations | 可加載配置文件目錄 |
--resources | 資源目錄 |
---translations | 翻譯文件目錄 |
---views | 視圖目錄 |
--src | 源碼目錄 |
---bootstrap.php | 插件啟動(dòng)腳本 |
--composer.json | Composer 配置文件 |
通過(guò)對(duì) Composer 的自定義,可以實(shí)現(xiàn) Composer 自動(dòng)加載 Extension 定義的依賴項(xiàng)。
配置 type 屬性為 notadd-extension
。
添加 notadd/installers
的 Package,才能實(shí)現(xiàn) Composer 自動(dòng)加載 Extension 定義的依賴項(xiàng)。
{
"name": "notadd/extension-demo",
"description": "Notadd's Demo Extension.",
"type": "notadd-extension",
"keywords": ["notadd", "demo", "extension"],
"homepage": "https://notadd.com",
"license": "Apache-2.0",
"authors": [
{
"name": "twilroad",
"email": "heshudong@ibenchu.com"
}
],
"autoload": {
"psr-4": {
"Notadd\\Demo\\": "src/"
}
},
"require": {
"php": ">=7.0",
"notadd/installers": "0.5.*"
}
}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: