可以这样制定指令吗?用+号连起来

比如:

    ctx.command('指令+<text>')
        .action(async ({ session }, text) => {
            return text
        })
1 个赞

没见过这样的写法

你是想要实现什么效果呢

大佬,我就是想实现这个写法啊

1 个赞

这样写,是想要实现什么效果呢?

与一般的

ctx.command('指令 <text>')
        .action(async ({ session }, text) => {
            return text
        })

有什么预期效果的区别呢

比如绑定的时候,这样的指令看起来更友好一点

1 个赞

没懂

什么是绑定 ?

指令更友好 ?体现在哪?

没有get到你的点

你理解问题有点偏差了,我只是想实现这样的指令而已

1 个赞

指令名称就叫 指令+ 吗?
那你应该写

ctx.command('指令+ <text>')
        .action(async ({ session }, text) => {
            return text
        })

但是这样多个加号并不好吧。。。。


按照你原本的写法,指令名称会变成 指令+<text>

like this

我是想连起来,中间不要空格,
@机器人后, 比如指令: 绑定+游戏昵称 这样

1 个赞

koishi的指令和参数是需要使用空格间隔开的。

从开发规范上,你创建command还是应该使用 ctx.command('指令 <text>')

而不能 ctx.command('指令+<text>')

不过当然,你也可以通过中间件/监听器来自己实现command效果的解析与响应,实现移除空格


不过插件市场里 好像已经有移除空格解析的插件了

1 个赞

好的我去找找看,感谢大佬的解答

1 个赞