1
0
mirror of https://shylinux.com/x/volcanos synced 2025-04-25 16:58:06 +08:00

opt run.arg

This commit is contained in:
shaoying 2020-09-09 08:23:53 +08:00
parent 6d77f4bb21
commit c702306219
3 changed files with 24 additions and 29 deletions

View File

@ -188,7 +188,7 @@ Volcanos("onengine", {help: "解析引擎", list: [], _init: function(can, meta,
}},
"project": {name: "研发群", storm: {
"studio": {name: "研发 studio", action: [
{name: "pod", help: "路由器", index: "web.route"},
{name: "route", help: "路由器", index: "web.route"},
{name: "inner", help: "编辑器", index: "web.code.inner", args: ["src/", "main.go"]},
{name: "status", help: "代码状态", index: "web.code.git.status"},
{name: "total", help: "代码统计", index: "web.code.git.total"},
@ -334,7 +334,7 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
CloneField: function() { can.Clone() },
}, Volcanos.meta.libs.concat([item.display||"/plugin/input.js", "/frame.js"]), function(input) { input.sup = can
input.run = function(event, cmds, cb, silent) { var msg = can.request(event)
can.onkeypop.show({key: meta.name[0]}, can)
var prefix = []; can.onkeypop.show({key: meta.name[0]}, can)
switch (item.name) {
case "打开":
case "查看":
@ -350,11 +350,11 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
can._output.innerHTML = ""
return typeof cb == "function" && cb(can.request(event))
default:
cmds && cmds[0] == "action" || msg.Option("_action", item.name||item.value)
cmds && cmds[0] == "action" || prefix.push(item.name||item.value)
}
can.core.Item(can.Conf("option"), msg.Option)
return can.onappend._output(can, meta, event, can.Pack(cmds), cb, silent)
msg.Option(can.Conf("option"))
return can.onappend._output(can, meta, event, prefix.concat(can.Pack(cmds)), cb, silent)
}
input.onimport && input.onimport._init(input, input.Conf(item), item.list||[], function() {}, input._target)
@ -393,7 +393,7 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
typeof cb == "function" && cb(msg)
if (silent) { return }
var display = (msg.Option("_plugin")||msg.Option("_display")||meta.feature.plugin||meta.feature.display||"table.js")
var display = (msg.Option("_display")||meta.feature.display||"table.js")
display.indexOf("/") == 0 || (display = "/plugin/"+display)
display.endsWith(".js") || (display += ".js")
@ -549,9 +549,12 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
if (can.Conf("feature")[target.value]) {
// 输入参数
can.user.input(event, can, can.Conf("feature")[target.value], function(event, button, data, list) {
var msg = can.request(event); msg.Option(can.Option()), msg.Option(line)
var msg = can.request(event); msg.Option(can.Option()), msg.Option(line), msg.Option(data)
var args = ["action", target.value]; can.core.Item(data, function(key, value) {
key && value && args.push(key, value)
})
can.run(event, ["action", target.value].concat(list), function(msg) {
can.run(event, args, function(msg) {
can.user.toast(can, target.value+"成功"), can.run({})
}, true)
return true

View File

@ -3,43 +3,34 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, meta,
})
Volcanos("onaction", {help: "控件交互", list: [],
onchange: function(event, can) {
if (event.target.tagName == "SELECT") {
can.run(event)
}
if (event.target.tagName == "SELECT") { can.run(event) }
},
onclick: function(event, can) {
onclick: function(event, can) { var name = can.Conf("name")
var msg = can.sup.request(event)
// 前端回调
var sub = can.sup && can.sup._outputs && can.sup._outputs[can.sup._outputs.length-1]
var cb = sub && sub.onaction && sub.onaction[can.Conf("name")]
if (typeof cb == "function") { return cb(event, sub, can.Conf("name")) }
var cb = sub && sub.onaction && sub.onaction[name]
if (typeof cb == "function") { return cb(event, sub, name) }
// 通用回调
var cb = can.onaction[can.Conf("name")]
if (can.sup && typeof cb == "function") { return cb(event, can.sup, can.Conf("name")) }
var cb = can.onaction[name]
if (can.sup && typeof cb == "function") { return cb(event, can.sup, name) }
// 后端回调
var feature = can.sup.Conf("feature")
var input = feature && feature[can.Conf("name")]; if (input) {
var input = feature && feature[name]; if (input) {
return can.user.input(event, can, input,function(event, button, data, list) {
var msg = can.request(event); can.core.Item(can.sup.Option(), msg.Option)
var args = ["action", can.Conf("name")]; can.core.Item(data, function(key, value) {
var msg = can.request(event); msg.Option(can.sup.Option())
var args = ["action", name]; can.core.Item(data, function(key, value) {
key && value && args.push(key, value)
})
can.run(event, args, function(msg) {
can.user.toast(can, "添加成功")
can.run(event)
}, true)
can.run(event, args, function(msg) { can.run(event) }, true)
return true
})
}
// 通用回调
if (can.Conf("type") == "button") {
var toast = can.user.toast(can, "执行中...", can.sup._help, 100000)
can.run(event, [], function(msg) {
toast.Close()
})
}
if (can.Conf("type") == "button") { can.run(event) }
},
onkeydown: function(event, can) {
can.onkeypop.show(event, can)

View File

@ -24,6 +24,7 @@ body.white fieldset p.story[data-name=inner] {
}
body.white fieldset div.story[data-type=spark] {
/* background-color:#c2daef; */
clear:both;
}
body.white fieldset div.story[data-type=spark] span:hover {
background-color:blue;