diff --git a/frame.js b/frame.js index 64bcc365..c68d55e1 100644 --- a/frame.js +++ b/frame.js @@ -293,8 +293,8 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta, can.run(event, cmds, function(msg) { var sub = can.core.Value(can, "_outputs.-1") - if (can.core.CallFunc("onimport._process", [sub, msg, cmds, cb], sub)) { return } - if (can.core.CallFunc("onimport._process", [can, msg, cmds, cb], can)) { return } + if (can.core.CallFunc([sub, "onimport._process"], [sub, msg, cmds, cb])) { return } + if (can.core.CallFunc([can, "onimport._process"], [can, msg, cmds, cb])) { return } typeof cb == "function" && cb(msg) }, silent) return true @@ -304,8 +304,8 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta, return can.run(event, cmds||[], function(msg) { var sub = can.core.Value(can, "_outputs.-1") - if (can.core.CallFunc("onimport._process", [sub, msg, cmds, cb], sub)) { return } - if (can.core.CallFunc("onimport._process", [can, msg, cmds, cb], can)) { return } + if (can.core.CallFunc([sub, "onimport._process"], [sub, msg, cmds, cb])) { return } + if (can.core.CallFunc([can, "onimport._process"], [can, msg, cmds, cb])) { return } typeof cb == "function" && cb(msg) if (silent) { return } @@ -381,21 +381,6 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta, item.action == "auto" && (input.dataset.action = "auto") switch (item.type = item.type||item._input||"text") { - case "upfile": item.type = "file"; break - case "button": - item.value = item.value||item.name||"查看"; - break - case "select": input.type = "select" - item.values = typeof item.values == "string"? item.values.split(" "): item.values - if (!item.values && item.value) { - item.values = item.value.split("|") , item.value = item.values[0] - if (item.values[0] == "day") { item.value = item.values[1] } - } - - item.value = value || item.value, input.list = item.values.map(function(value) { - return {type: "option", value: value, inner: value} - }), item.className || can.page.ClassList.add(can, item, "args") - break case "textarea": input.type = "textarea" item.style.width = item.style.width || can.Conf(["feature", "textarea", item.name, "width"].join(".")) || can.Conf(["feature", "textarea", "width"].join(".")) || 400 item.style.height = item.style.height || can.Conf(["feature", "textarea", item.name, "height"].join(".")) || can.Conf(["feature", "textarea", "height"].join(".")) || 30 @@ -403,31 +388,42 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta, case "password": // no break case "text": + item.autocomplete = "off" item.value = value || item.value || "" item.className || can.page.ClassList.add(can, item, "args") - item.autocomplete = "off" break + case "select": input.type = "select" + item.values = typeof item.values == "string"? can.core.Split(item.values): item.values + if (!item.values && item.value) { + item.values = can.core.Split(item.value), item.value = item.values[0] + if (item.values[0] == "day") { item.value = item.values[1] } + } + + item.value = value||item.value, input.list = item.values.map(function(value) { + return {type: "option", value: value, inner: value} + }), item.className || can.page.ClassList.add(can, item, "args") + break + case "button": item.value = value||item.value||item.name||"查看"; break + case "upfile": item.type = "file"; break } - return can.page.Append(can, target, [{view: ["item "+item.type], list: [{text: [name, "label"]}, {text: [": ", "label"]}, input]}])[item.name] + return can.page.Append(can, target, [{view: ["item "+item.type], list: [input]}])[item.name] }, - table: function(can, type, msg, cb, target) { + table: function(can, msg, cb, target) { var table = can.page.AppendTable(can, msg, target||can._output, msg.append, cb||function(value) { return {text: [value, "td"]} - }) - table && can.page.Modify(can, table, {className: type||"content"}) + }); table && can.page.Modify(can, table, {className: "content"}) return table }, - board: function(can, type, text, target) { text = can.page.Display(text || "") - return text && can.page.Append(can, target, [{view: ["code "+(type||""), "div", text]}]).code + board: function(can, text, target) { text = can.page.Display(text || "") + return text && can.page.Append(can, target, [{view: ["code", "div", text]}]).code }, figure: function(can, meta, key, target) { if (key.indexOf("@") != 0) { return } - var list = can.core.Split(key, "@=", "@=", {simple: true}) + var list = can.core.Split(key, "@=", "@=") var pkey = list[0], pval = list[1]||"" - can.page.Modify(can, target, {autocomplete: "off"}) target.type != "button" && target.value.startsWith("@") && (target.value = pval||"") pkey && can.require(["/plugin/input/"+pkey+".js"], function(can) { @@ -442,24 +438,24 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta, } }) }) }, - _plugin: function(can, msg, meta, cb, target) { - meta.feature = can.base.Obj(msg.meta&&msg.meta[0] || "{}", {}) - meta.inputs = can.base.Obj(msg.list&&msg.list[0] || "[]", []) + _plugin: function(can, value, meta, cb, target) { + meta.feature = can.base.Obj(value.meta||"{}", {}) + meta.inputs = can.base.Obj(value.list||"[]", []) - meta.name = meta.name || msg.name&&msg.name[0] || "story" - meta.help = meta.help || msg.help&&msg.help[0] || "story" - meta.width = meta.width || can.Conf("width") - meta.type = "story" + meta.name = meta.name||value.name||"story" + meta.help = meta.help||value.help||"story" + meta.width = meta.width||can.Conf("width") + meta.type = meta.type||"story" can.onappend._init(can, meta, ["/plugin/state.js"], function(sub) { typeof cb == "function" && cb(sub, meta) sub.page.Remove(sub, sub._legend) - }, target || can._output) + }, target||can._output) }, plugin: function(can, meta, cb, target) { meta = meta || {} - can.run({}, ["action", "command", meta.index], function(msg) { - can.onappend._plugin(can, msg, meta, cb, target) - }, true) + can.run({}, ["action", "command", meta.index], function(msg) { msg.Table(function(value) { + can.onappend._plugin(can, value, meta, cb, target) + }) }, true) }, plugins: function(can, meta, cb, target) { can.onappend.plugin(can, meta, function(sub) { @@ -493,7 +489,7 @@ Volcanos("onlayout", {help: "页面布局", list: [], _init: function(can, targe can.page.Select(can, target, ["fieldset.main>div.output"], function(output) { can.page.Modify(can, output, {style: {height: height}}) }) - can.onengine.signal(can, "resize", can.request(event, {width: width, height: height})) + can.onengine.signal(can, "resize", can.request({}, {width: width, height: height})) }, topic: function(can, topic) { topic && (can._topic = topic) can.user.topic(can, can._topic || can.user.Search(can, "topic") || ((can.user.Search(can, "pod")||can.base.isNight())? "black": "white")) diff --git a/lib/core.js b/lib/core.js index d4875e20..fb5ad4fe 100644 --- a/lib/core.js +++ b/lib/core.js @@ -55,6 +55,19 @@ Volcanos("core", {help: "核心模块", next(obj, cb, 0) }), + + Keys: function() { var list = [] + for (var i = 0; i < arguments.length; i++) { var v = arguments[i] + switch (typeof v) { + case "number": list.push(v+""); break + case "string": list.push(v); break + case "object": list.push(arguments.callee.apply(this, v)); break + case "function": list.push(v()); break + default: list.push(v+"") + } + } + return list.join(".") + }, Value: function(data, key, value) { if (data == undefined) { return } if (key == undefined) { return data } @@ -70,24 +83,26 @@ Volcanos("core", {help: "核心模块", p = p[ls[0]], ls = ls.slice(1) }; return p }, - CallFunc: shy("调用器", function(func, args, mod) { - func = typeof func == "string"? this.Value(mod, func): func + CallFunc: shy("调用器", function(func, args, mod) { args = args||{} + var can = args["can"]||args[0], msg = args["msg"]||args[1] + + func = typeof func == "function"? func: typeof func == "string"? this.Value(mod||can, func): + typeof func == "object" && func.slice? this.Value(func, this.Keys(func.slice(1))): null if (typeof func != "function") { return } - var ls = func.toString(); ls = ls.split(")")[0], ls = ls.split("(")[1] - - var msg = args["msg"], can = args["can"], echo = false - var list = []; this.List(ls.split(","), function(item, index) { item = item.trim() - list.push(args[index] || args[item] || msg&&msg.Option(item) || can&&can.Conf(item)) + var cb = args["cb"] + var ls = func.toString().split(")")[0].split("(")[1].split(",") + var list = [], echo = false; this.List(ls, function(item, index) { item = item.trim() + list.push(args[item] || msg&&msg.Option&&msg.Option(item) || args[index] || can&&can.Conf&&can.Conf(item) || null) if (item == "cb") { echo = true } }) - var res = typeof func == "function" && func.apply(mod||this, list) - if (!echo && typeof args.cb == "function") { res && args.msg.Echo(res), args.cb(args.msg) } + var res = func.apply(mod||can, list) + if (!echo && typeof cb == "function") { res && msg.Echo(res), cb(msg) } return res }), Split: shy("分词器", function(str) { if (!str || !str.length) { return [] } - var opt = {simple: false}, arg = []; for (var i = 1; i < arguments.length; i++) { + var opt = {detail: false}, arg = []; for (var i = 1; i < arguments.length; i++) { typeof arguments[i] == "object"? opt = arguments[i]: arg.push(arguments[i]) } @@ -109,7 +124,7 @@ Volcanos("core", {help: "核心模块", if (!space) { res.push(list.slice(begin, i)) } - opt.simple || res.push({text: list.slice(i, i+1), type: "space", left: left}) + opt.detail && res.push({text: list.slice(i, i+1), type: "space", left: left}) space = true, begin = i+1 } } else if (subs[list[i]]) { diff --git a/pane/Search.js b/pane/Search.js index 0e28494d..88d22404 100644 --- a/pane/Search.js +++ b/pane/Search.js @@ -13,7 +13,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, typeof cb == "function" && cb(msg) }, _table: function(can, msg, fields) { can.onmotion.clear(can, can.ui.content) - var table = can.onappend.table(can, "content", msg, function(value, key, index, line) { + var table = can.onappend.table(can, msg, function(value, key, index, line) { can.Status("count", index+1) return {text: [key == "text" && typeof line.text == "function" && line.text.help || value, "td"], onclick: function(event) { if (event.shiftKey) { var msg = can.request(event, line) diff --git a/plugin/input.js b/plugin/input.js index 6fc407d4..a89313f0 100644 --- a/plugin/input.js +++ b/plugin/input.js @@ -39,9 +39,10 @@ Volcanos("onaction", {help: "控件交互", list: [], _init: function(can, meta, onkeydown: function(event, can) { var target = event.target can.onkeypop.input(event, can, target); switch (event.key) { case "Enter": - if (can.Conf("type") == "text") { event.target.setSelectionRange(0, -1), can.run(event) } - if (can.Conf("type") == "textarea") { if (event.ctrlKey) { break } can.run(event) } - event.stopPropagation(), event.preventDefault(); break + switch (can.Conf("type")) { + case "textarea": if (!event.ctrlKey) { return } + case "text": event.target.setSelectionRange(0, -1); break + }; can.run(event), event.stopPropagation(), event.preventDefault(); break case "b": if (event.ctrlKey) { can.CloneInput() } break case "m": if (event.ctrlKey) { can.CloneField() } break } diff --git a/plugin/input/key.js b/plugin/input/key.js index c3d066f2..fdb96865 100644 --- a/plugin/input/key.js +++ b/plugin/input/key.js @@ -8,7 +8,7 @@ Volcanos("onfigure", {help: "控件详情", list: [], key: {onclick: function(ev {button: ["关闭", function(event) { can.page.Remove(can, figure.fieldset) }]}, ], figure.action) - can.onappend.table(can, "content", msg, function(value, key, index, line) { + can.onappend.table(can, msg, function(value, key, index, line) { return {type: "td", inner: value, onclick: function() { target.value = value, msg.Option("_refresh") && run() can.page.Remove(can, figure.fieldset) diff --git a/plugin/local/chat/media.js b/plugin/local/chat/media.js index 19201b45..4566f2a5 100644 --- a/plugin/local/chat/media.js +++ b/plugin/local/chat/media.js @@ -2,7 +2,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, can.ui = can.onlayout.display(can, target) can.ui.canvas = can.page.Append(can, can.ui.display, [{type: "canvas", width: 320, height: 240, style: {display: "none"}}]).first - can.onappend.table(can, "content", msg, function(value, key, index, line, array) { + can.onappend.table(can, msg, function(value, key, index, line, array) { return {text: [value, "td"], onclick: function(event) { can.sup.onaction.change(event, can.sup, key, value, function(msg) { can.run(event) @@ -10,7 +10,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, }} }, can.ui.content) - can.onappend.board(can, "content", msg.Result(), can.ui.display) + can.onappend.board(can, msg.Result(), can.ui.display) typeof cb == "function" && cb(msg) }, }) diff --git a/plugin/local/code/inner.js b/plugin/local/code/inner.js index c67963a4..0a3c7363 100644 --- a/plugin/local/code/inner.js +++ b/plugin/local/code/inner.js @@ -118,7 +118,7 @@ Volcanos("onsyntax", {help: "语法高亮", list: ["keyword", "prefix", "line"], p = can.onsyntax[p.link] || p function wrap(type, str) { return type? ''+str+'': str } - p.keyword && (line = can.core.List(can.core.Split(line, p.split && p.split.space || " ", p.split && p.split.operator || "{[(|)]}"), function(item, index, array) { + p.keyword && (line = can.core.List(can.core.Split(line, p.split && p.split.space || " ", p.split && p.split.operator || "{[(|)]}", {detail: true}), function(item, index, array) { item = typeof item == "object"? item: {text: item}, p.word && (item = p.word(item, index, array)) var text = item.text; var key = item.keyword||p.keyword[text] @@ -269,7 +269,7 @@ Volcanos("onaction", {help: "控件交互", list: [], toast.Close() can.ui.tags.innerHTML = "" - can.onappend.table(can, "content", msg, function(value, key, index, line) { can.Status("标签数", index+1) + can.onappend.table(can, msg, function(value, key, index, line) { can.Status("标签数", index+1) value = value.replace("<", "<").replace(">", ">"), value = value.replace("./", "") return {text: ["", "td"], list: [{text: [value, "div"]}], onclick: function(event) { line.line && can.onimport.tabview(can, can.Option("path"), line.file.replace("./", ""), parseInt(line.line), function() { diff --git a/plugin/local/code/vimer.js b/plugin/local/code/vimer.js index 11039245..e79fafc0 100644 --- a/plugin/local/code/vimer.js +++ b/plugin/local/code/vimer.js @@ -98,10 +98,10 @@ Volcanos("onkeymap", {help: "键盘交互", list: ["command", "normal", "insert" toast.Close() can.ui.output.innerHTML = "" - can.onappend.table(can, "content", msg, function(value, key, index) { + can.onappend.table(can, msg, function(value, key, index) { return {text: [value, "td"]} }, can.ui.output) - can.onappend.board(can, "content", msg.Result(), can.ui.output) + can.onappend.board(can, msg.Result(), can.ui.output) }, true) }, _engine: { @@ -142,7 +142,7 @@ Volcanos("onkeymap", {help: "键盘交互", list: ["command", "normal", "insert" can.page.Modify(can, can.ui.command, {style: {display: "none"}, value: ""}) can.onkeymap._normal(can) }, - Enter: function(event, can) { var line = can.ui.command.value || can.ui.cmd.value ; var ls = can.core.Split(line, " ", ",", {simple: true}) + Enter: function(event, can) { var line = can.ui.command.value || can.ui.cmd.value ; var ls = can.core.Split(line, " ", ",") var cb = can.onkeymap._engine[ls[0]]; typeof cb == "function"? cb(event, can, line, ls): can.onkeymap._remote(event, can, line, ["action", "command"].concat(ls)) diff --git a/plugin/local/wiki/data.js b/plugin/local/wiki/data.js index 0e78e00b..f380ff8a 100644 --- a/plugin/local/wiki/data.js +++ b/plugin/local/wiki/data.js @@ -1,7 +1,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, list, cb) { can.ui = can.page.Appends(can, can._target, [{view: "content"}, {view: "display"}]) - can.table = can.onappend.table(can, "content", msg, function(value, key, index, line) { + can.table = can.onappend.table(can, msg, function(value, key, index, line) { return {text: [value, "td"], oncontextmenu: function(event) { can.user.carte(event, can, can.ondetail, can.ondetail.list, function(ev, cmd, meta) { var cb = meta[cmd]; cb && cb(event, can, cmd, value, key, index, line) diff --git a/plugin/local/wiki/draw.js b/plugin/local/wiki/draw.js index 28acddfe..fd0761b9 100644 --- a/plugin/local/wiki/draw.js +++ b/plugin/local/wiki/draw.js @@ -598,8 +598,8 @@ Volcanos("onaction", {help: "组件菜单", list: [ _mode: { run: function(event, can) { var target = event.target event.type == "click" && target.Value("type") && can.run(event, ["action", "run", target.Value("zone"), target.Value("type"), target.Value("name"), target.Value("text")], function(msg) { - can.onappend.table(can, "content", msg, function() {}, can.ui.display) - can.onappend.board(can, "content", msg.Result(), can.ui.display) + can.onappend.table(can, msg, function() {}, can.ui.display) + can.onappend.board(can, msg.Result(), can.ui.display) }, true) }, translate: function(event, can, point) { diff --git a/plugin/local/wiki/feel.js b/plugin/local/wiki/feel.js index 0bf602c6..257c63fd 100644 --- a/plugin/local/wiki/feel.js +++ b/plugin/local/wiki/feel.js @@ -5,7 +5,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, }) can.ui = can.onlayout.display(can, target) - can.onappend.table(can, "content", can.path, function(value, key) { + can.onappend.table(can, can.path, function(value, key) { return {type: "td", inner: value, onclick: function(event) { can.sup.onaction.change(event, can.sup, key, value, function(msg) { can.onimport._init(can, msg, list, cb, target) diff --git a/plugin/local/wiki/word.js b/plugin/local/wiki/word.js index 1bbfd535..f04a51a2 100644 --- a/plugin/local/wiki/word.js +++ b/plugin/local/wiki/word.js @@ -7,7 +7,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, can.page.Modify(can, can._target, {style: {"max-width": can.Conf("width")}}) if (msg.Option("_display") == "table") { - return can.onappend.table(can, "content", msg, function(value, key) { + return can.onappend.table(can, msg, function(value, key) { return {text: [value, "td"], onclick: function(event) { can.sup.onaction.change(event, can.sup, key, value, function(msg) { can.run(event) diff --git a/plugin/state.js b/plugin/state.js index 38f21410..53df7b6d 100644 --- a/plugin/state.js +++ b/plugin/state.js @@ -1,8 +1,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, conf, list, cb, target) { }, _process: function(can, msg, cmds, cb, silent) { - var action = can.onimport[msg.Option("_process") || can.Conf("feature._process")] - return typeof action == "function" && action(can, msg, cmds, cb, silent) + return can.core.CallFunc([can.onimport, msg.Option("_process")], [can, msg, cmds, cb, silent]) }, _progress: function(can, msg, cmds, cb, silent) { var size = msg.Append("size") || msg.Append("count") diff --git a/plugin/story/trend.js b/plugin/story/trend.js index df2564bb..63737b8b 100644 --- a/plugin/story/trend.js +++ b/plugin/story/trend.js @@ -151,7 +151,7 @@ Volcanos("onaction", {help: "组件菜单", list: ["编辑", "清空", ["view", }, "数据源": function(event, can) { can.onmotion.clear(can, can.sub.ui.display) - can.onappend.table(can, "content", can.msg, null, can.sub.ui.display) + can.onappend.table(can, can.msg, null, can.sub.ui.display) }, }) Volcanos("onexport", {help: "导出数据", list: ["from", "commit", "total", "date", "begin", "add", "del", "close", "note"]}) diff --git a/plugin/table.js b/plugin/table.js index f9a83d5d..fa19a616 100644 --- a/plugin/table.js +++ b/plugin/table.js @@ -7,11 +7,11 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, typeof cb == "function" && cb(msg) can.page.Append(can, can.ui.content, [can.onimport._control(can, msg)]) - can.onappend.table(can, "content", msg, function(value, key, index, line, array) { + can.onappend.table(can, msg, function(value, key, index, line, array) { return can.onimport._table(can, value, key, index, line, array) }, can.ui.content) - can.onappend.board(can, "content", msg.Result(), can.ui.display) + can.onappend.board(can, msg.Result(), can.ui.display) can.onimport._board(can, msg) }, _table: function(can, value, key, index, line, array) { @@ -72,11 +72,11 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, return true }, _inner: function(can, msg) { - can.onappend.table(can, "content", msg, function(value, key, index, line, array) { + can.onappend.table(can, msg, function(value, key, index, line, array) { return can.onimport._table(can, value, key, index, line, array) }, can.ui.display) - can.onappend.board(can, "content", msg.Result(), can.ui.display) + can.onappend.board(can, msg.Result(), can.ui.display) can.onimport._board(can, msg) return true }, @@ -112,7 +112,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, can.run(event) }]}, - {select: [["cache.field"].concat(msg["append"]||can.core.Split(msg.Option("fields"), {simple: true})), function(event) { + {select: [["cache.field"].concat(msg["append"]||can.core.Split(msg.Option("fields"))), function(event) { can.run(event) }], _init: function(item) { item.value = msg.Option("cache.field") || item.value diff --git a/proto.js b/proto.js index 4d8fe729..39b799d6 100644 --- a/proto.js +++ b/proto.js @@ -17,7 +17,7 @@ var Volcanos = shy("火山架", {libs: [], cache: {}}, [], function(name, can, l meta.libs = Config.libs, meta.volcano = Config.volcano // 预加载 - var Preload = []; Config.panes.forEach(function(pane) { + var Preload = [Config.volcano]; Config.panes.forEach(function(pane) { Preload = Preload.concat(pane.list = pane.list || ["/pane/"+pane.name+".css", "/pane/"+pane.name+".js"]) }); Preload = Preload.concat(Config.plugin) @@ -32,7 +32,7 @@ var Volcanos = shy("火山架", {libs: [], cache: {}}, [], function(name, can, l } } - list.push(can = can || {}), can.__proto__ = {__proto__: Volcanos.meta, _name: name, _load: function(name, cb) { + can = can || {}, can.__proto__ = {__proto__: Volcanos.meta, _name: name, _load: function(name, cb) { // 加载缓存 var cache = meta.cache[name] || []; for (list.reverse(); list.length > 0; list) { var sub = list.pop(); sub != can && cache.push(sub) @@ -72,6 +72,8 @@ var Volcanos = shy("火山架", {libs: [], cache: {}}, [], function(name, can, l if (_can_name) { meta.cache[_can_name] = meta.cache[_can_name] || [] meta.cache[_can_name].push(can) + } else { + list.push(can) } return can.require(libs, cb), can }) diff --git a/publish/chrome/chrome.js b/publish/chrome/chrome.js index ef7957b4..55c5c595 100644 --- a/publish/chrome/chrome.js +++ b/publish/chrome/chrome.js @@ -49,7 +49,7 @@ Volcanos("chrome", { })}, can.misc.WSS(can, {type: "chrome", name: "chrome"}, function(event, msg, cmd, arg) { - can.core.CallFunc(can.core.Value(can, cmd), {can: can, msg: msg, cmds: arg, cb: function() { + can.core.CallFunc([can, cmd], {can: can, msg: msg, cmds: arg, cb: function() { msg.Reply() }}) }) diff --git a/publish/chrome/contexts.js b/publish/chrome/contexts.js index 132dd6f0..c120aae5 100644 --- a/publish/chrome/contexts.js +++ b/publish/chrome/contexts.js @@ -31,7 +31,7 @@ Volcanos("chrome", { }, [], function(can) { can._load("chrome") chrome.extension.onMessage.addListener(function(req, sender, cb) { var msg = can.request(); can.core.List(req.option, function(key) { msg.Option(key, req[key][0]) }) - can.core.CallFunc(can.core.Value(can, req.detail[3]||"spide"), {can: can, msg: msg, cmds: req.detail.slice(4), cb: cb}) + can.core.CallFunc([can, req.detail[3]||"spide"], {can: can, msg: msg, cmds: req.detail.slice(4), cb: cb}) }) }) diff --git a/publish/chrome/spided.js b/publish/chrome/spided.js index 30d49337..329cec61 100644 --- a/publish/chrome/spided.js +++ b/publish/chrome/spided.js @@ -2,8 +2,8 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, can.ui = can.page.Append(can, can._target, [ {view: ["content", "div"]}, {view: ["display", "pre"]}, ]) - can.onappend.table(can, "content", msg, null, can.ui.content) - can.onappend.board(can, "content", msg.Result(), can.ui.display) + can.onappend.table(can, msg, null, can.ui.content) + can.onappend.board(can, msg.Result(), can.ui.display) var refresh = msg.Option("_refresh") || can.Conf("feature")["_refresh"] refresh && can.core.Timer(refresh, function() { can.run({})