Vapor自定义控制台指令很轻松。
Example
想要自定义控制台指令必须创建一个新的.swift
文件,然后引入Vapor
和Console
模块,然后实现Command
协议。
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>方法中将你的业务逻辑和指令相关联。
创建完Custom Command文件之后,我们切换到main.swift
文件,将自定义指令添加到droplet中
drop.commands.append(MyCustomCommand(console: drop.console))
这将允许Vapor访问我们的自定义指令,并且在--help
中显示其信息。
在编译应用程序之后可以输入下面的指令运行我们的指令:
.build/debug/App command
<b>总结:</b>自定义指令方便我们进行个性化的调试,当然也可以方便我们对程序进行管理。
网友评论