From 63a48dcd8ac31f992796fdf6a240d974709ed8f1 Mon Sep 17 00:00:00 2001 From: shaoying Date: Thu, 9 Jan 2020 10:02:05 +0800 Subject: [PATCH] opt table --- plugin/inner.js | 57 +++++++++---------------------------------------- plugin/table.js | 2 ++ 2 files changed, 12 insertions(+), 47 deletions(-) diff --git a/plugin/inner.js b/plugin/inner.js index e275549e..bcdad49d 100644 --- a/plugin/inner.js +++ b/plugin/inner.js @@ -1,14 +1,17 @@ Volcanos("onimport", {help: "导入数据", list: [], init: function(can, msg, cb, output, option) {output.innerHTML = msg.Result(); - can.page.Select(can, output, "table", function(table) { - can.page.OrderTable(can, table) - }) + can.page.Select(can, output, "table", function(table) {can.page.OrderTable(can, table)}) can.page.Select(can, output, ".story", function(story) {var data = story.dataset||{}; - story.oncontextmenu = function(event) { - can.user.carte(event, shy("", can.ondetail, can.feature.detail || can.ondetail.list, function(event, cmd, meta) {var cb = meta[cmd]; + story.oncontextmenu = function(event) {var detail = can.feature.detail || can.ondetail.list; + switch (data.type) { + case "shell": + detail = ["运行"] + } + can.user.carte(event, shy("", can.ondetail, detail, function(event, cmd, meta) {var cb = meta[cmd]; typeof cb == "function"? cb(event, can, msg, cmd, story): can.run(event, ["story", typeof cb == "string"? cb: cmd, data.type, data.name, data.text], function(msg) { + var timer = msg.Result()? can.user.toast(msg.Result()): can.user.toast({ duration: -1, text: cmd, width: 800, height: 400, list: [{type: "table", list: [{row: msg.append, sub: "th"}].concat(msg.Table(function(line, index) { @@ -19,47 +22,13 @@ Volcanos("onimport", {help: "导入数据", list: [], })) } }) - return - can.page.Select(can, output, "ul.premenu", function(pre) { - can.page.Select(can, output, "ul.endmenu", function(end) { - can.page.CopySub(can, pre, end) - }) - }) - can.page.Select(can, output, "svg", function(svg) { - svg.onclick = function(event) {var item = event.target; - switch (event.target.tagName) { - case "text": - can.user.toast(can.page.CopyText(can, item.innerHTML), "复制成功") - break - case "rect": - break - } - } - svg.oncontextmenu = function(event) {var item = event.target; - switch (event.target.tagName) { - case "text": - can.user.carte(event, shy("", can.ondetail, can.ondetail.list, function(event, key, meta) {cb = meta[key]; - typeof cb == "function"? cb(event, can, msg, key, item, svg): - can.run(event, [typeof cb == "string"? cb: key, item], null, true) - })) - break - case "rect": - can.user.carte(event, shy("", can.ondetail, can.ondetail.list, function(event, key, meta) {cb = meta[key]; - typeof cb == "function"? cb(event, can, msg, key, item, svg): - can.run(event, [typeof cb == "string"? cb: key, item], null, true) - })) - break - } - } - }) }, favor: function(event, can, msg, cmd, output) {var key = msg.detail[0]; var cb = can.onaction[key]; if (typeof cb == "function") {cb(event, can, msg, cmd, output); return msg.Echo(can._name, " onaction ", key), msg._hand = true} var cb = can.onchoice[key]; if (typeof cb == "function") {cb(event, can, msg, cmd, output); return msg.Echo(can._name, " onchoice ", key), msg._hand = true} }, }) -Volcanos("onaction", {help: "组件交互", list: [], -}) +Volcanos("onaction", {help: "组件交互", list: []}) Volcanos("onchoice", {help: "组件菜单", list: ["返回", "清空", "复制", "下载", "表格", "绘图", "媒体"], "返回": function(event, can, msg, key, target) { can.run(event, ["", "Last"]) @@ -76,13 +45,7 @@ Volcanos("onchoice", {help: "组件菜单", list: ["返回", "清空", "复制", can.page.Download(can, list[0]+list[1], list[2]); }, }) -Volcanos("ondetail", {help: "组件详情", list: ["选择", "修改", "复制"], - "选择": "select", - "删除": "delete", - "复制": function(event, can, msg, cmd, target) { - can.user.toast(can.page.CopyText(can, svg.innerHTML), "复制成功") - }, -}) +Volcanos("ondetail", {help: "组件详情", list: []}) Volcanos("onexport", {help: "导出数据", list: []}) diff --git a/plugin/table.js b/plugin/table.js index 5a2038b2..b811c443 100644 --- a/plugin/table.js +++ b/plugin/table.js @@ -24,6 +24,8 @@ Volcanos("onimport", {help: "导入数据", list: [], can.onimport.which(event, table, msg.append, function(index, key) { can.user.carte(event, shy("", can.ondetail, can.feature.detail || can.ondetail.list, function(event, cmd, meta) {var cb = meta[cmd]; var id = msg.Ids(index); + var sub = can.Event(event); + msg.append.forEach(function(key) {sub.Option(key, msg[key][index].trim())}) typeof cb == "function"? cb(event, can, msg, index, key, cmd, target): can.run(event, [id, typeof cb == "string"? cb: cmd, key, target.innerHTML], function(msg) { can.onimport.init(can, msg, cb, output, option)