5rKB5bPlusD 那加点时间,异步执行也需要时间.这块立即恢复可能就直接退出插件了.
[插件][快捷命令 3.0.1] 全新版本,大量更新
反馈个问题 : 升级插件后 {{subinput}}逻辑和 showSelectList 逻辑貌似冲突了, subinput 输入完按下回车, 不会弹出showSelectList选择项,而是直接选择第一个。
// json
选项${i}
var opt = []
for (var i = 0; i < 15; i++) {
// 每一个选项为 json 格式
opt.push({title:, description:
选项${i}的描述, abcd:
选项${i}的自定义属性})
选择的选项为${choise.title} ${endpoint}
}
quickcommand.showSelectList(opt, {optionType: 'json'}).then(choise => {
let endpoint = "{{subinput}}"
console.log()
})
quickcommand.showSelectList(opt, { optionType: 'json' }).then(choise => {
console.log(choise)
utools.outPlugin()
}).catch((e) => {
console.log(e)
})
文本输入处理 列表一闪 就关了
wang521ynii 没复现出来,我这是点击列表后才退出插件
上个版本还能用。。
5rKB5bPlusD 你匹配的文本是不是有换行
对字符串使用split,结果变成了2个数组,就离谱。
const iconv = require('iconv-lite')
var child = child_process.spawn("powercfg",["/list"])
child.stdout.on('data', data => {
var res = iconv.decode(data, 'cp936')
var opt = res.split('\n')
console.log(opt)
quickcommand.showSelectList(opt).then(choise => {
var id = choise.text.match(/[a-z0-9]*-[a-z0-9]*-[a-z0-9]*-[a-z0-9]*-[a-z0-9]*/)
system("powercfg -s " + id[0])
console.log(`已切换为${choise.text}`)
})
})
命令行会返回:
现有电源使用方案 (* Active)
-----------------------------------
电源方案 GUID: 0df3711f-215d-4069-919c-3356399372af (高性能) *
电源方案 GUID: 11297ad2-318b-4ad3-acc9-ece9b417f9bf (NAS模式)
电源方案 GUID: 381b4222-f694-41f0-9685-ff5bb260df2e (平衡)
电源方案 GUID: 3ab92031-f8c8-44cd-ab42-c8dc27225faf (节能)
电源方案 GUID: 51482532-02ae-4e60-8cfb-176ad524c0e5 (极限节能)
本意是对返回进行split后传入showselectList中,进行选择,从而切换电源模式。
但是split后,变成了2个数组,不知道什么原理
这样传入选项就显示不正确了,代码里也访问不了第二个数组。
realjackwang 亲,你确定你代码写对了?
const iconv = require('iconv-lite')
var child = child_process.spawn("powercfg", ["/list"])
let chunks = []
child.stdout.on('data', chunk => {
chunks.push(iconv.decode(chunk, 'cp936'))
});
child.on('close', code => {
let stdout = chunks.join("");
let opt = stdout.trim().split('\n')
quickcommand.showSelectList(opt).then(choise => {
var id = choise.text.match(/[a-z0-9]*-[a-z0-9]*-[a-z0-9]*-[a-z0-9]*-[a-z0-9]*/)
system("powercfg -s " + id[0])
console.log(`已切换为${choise.text}`)
})
})
fofolee 谢谢大佬点拨,我没用过js,ctrl+v误人啊
`var opt = []
for (var i = 0; i < 4; i++) {
// 每一个选项为 json 格式
opt.push({ title: 1 + "test", abcd: "选项的自定义属性", qq: 1111 })
}
quickcommand.showSelectList(opt, { optionType: 'json' }).then(choise => {
console.log(choise)
utools.shellOpenExternal('tencent://message/?uin=' + choise.qq + '&Site=test&Menu=yes')
utools.outPlugin()
}).catch((e) => {
console.log(e)
})`
你看看问题出在哪 列表一闪 就关了@fofolee#23583
- 已编辑
wang521ynii 忽略输出会退出插件,你改成纯文本输出吧
fofolee 好的 谢谢
fofolee 貌似不行 我想要的是列表常驻,现在是一闪即逝,改成纯文本 就看不到列表了
想请教下
系统是windows,把Anaconda文件夹和其下Scripts文件夹加入了系统环境变量PATH,但是快捷命令没有调用里面的python
请问这种情况只能使用custom环境解决嘛?
fofolee 对,有换行。快捷命令3.0之前还行的