W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
goctl支持針對api自定義插件,那我怎么來自定義一個插件了?來看看下面最終怎么使用的一個例子。
$ goctl api plugin -p goctl-android="android -package com.tal" -api user.api -dir .
上面這個命令可以分解成如下幾步:
此命令前面部分 goctl api plugin -p 是固定參數(shù),goctl-android="android -package com.tal" 是plugin參數(shù),其中g(shù)octl-android是插件二進(jìn)制文件,android -package com.tal是插件的自定義參數(shù),-api user.api -dir .是goctl通用自定義參數(shù)。
go-zero框架中包含了一個很簡單的自定義插件 demo,代碼如下:
package main
import (
"fmt"
"github.com/zeromicro/go-zero/tools/goctl/plugin"
)
func main() {
plugin, err := plugin.NewPlugin()
if err != nil {
panic(err)
}
if plugin.Api != nil {
fmt.Printf("api: %+v \n", plugin.Api)
}
fmt.Printf("dir: %s \n", plugin.Dir)
fmt.Println("Enjoy anything you want.")
}
plugin, err := plugin.NewPlugin() 這行代碼作用是解析從goctl傳遞過來的數(shù)據(jù),里面包含如下部分內(nèi)容:
type Plugin struct {
Api *spec.ApiSpec
Style string
Dir string
}
- Api:定義了api文件的結(jié)構(gòu)數(shù)據(jù)
- Style:可選參數(shù),可以用來控制文件命名規(guī)范
- Dir:工作目錄
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: