Vapor自定義控制臺指令很輕松。
Example
想要自定義控制臺指令必須創(chuàng)建一個新的.swift
文件,然后引入Vapor
和Console
模塊,然后實現(xiàn)Command
協(xié)議。
import Vapor
import Console
final class MyCustomCommand: Command {
public let id = "command"
public let help = ["This command does things, like foo, and bar."]
public let console: ConsoleProtocol
public init(console: ConsoleProtocol) {
self.console = console
}
public func run(arguments: [String]) throws {
console.print("running custom command...")
}
}
- <b>id</b>屬性是在控制臺輸入的調用該指令的字符串易核,
.build/debug/App command
將運行自定義指令。 - <b>help</b>屬性將為自定義指令的使用提供幫助信息浪默。
- <b>console</b>屬性傳遞自定義指令的對象牡直,遵守
ConsoleProtocol
,允許對控制臺進行操作纳决。 - <b>run</b>方法中將你的業(yè)務邏輯和指令相關聯(lián)碰逸。
創(chuàng)建完Custom Command文件之后,我們切換到main.swift
文件岳链,將自定義指令添加到droplet中
drop.commands.append(MyCustomCommand(console: drop.console))
這將允許Vapor訪問我們的自定義指令花竞,并且在--help
中顯示其信息。
在編譯應用程序之后可以輸入下面的指令運行我們的指令:
.build/debug/App command
<b>總結:</b>自定義指令方便我們進行個性化的調試掸哑,當然也可以方便我們對程序進行管理约急。