From 43f6b6123cda3490aaf46181126f5998bc9423b1 Mon Sep 17 00:00:00 2001 From: shaoying Date: Wed, 24 Feb 2021 18:36:07 +0800 Subject: [PATCH] opt auto --- frame.js | 4 ++++ lib/misc.js | 2 +- lib/user.js | 5 +++-- pane/Header.js | 10 +++++++++- pane/River.js | 4 ++-- proto.js | 4 ++-- 6 files changed, 21 insertions(+), 8 deletions(-) diff --git a/frame.js b/frame.js index 48adbdf7..3ba71479 100644 --- a/frame.js +++ b/frame.js @@ -40,6 +40,10 @@ Volcanos("onengine", {help: "解析引擎", list: [], _init: function(can, meta, can.core.CallFunc(cb, {msg: msg}) }) }), + _merge: function(can, sub) { + typeof sub._init == "function" && can.core && sub._init(can, sub) + for (var k in sub["river"]) { can.onengine["river"] = sub["river"]; break } + }, river: { "serivce": {name: "运营群", storm: { "wx": {name: "公众号 wx", action: [ diff --git a/lib/misc.js b/lib/misc.js index 4df802b2..19b6182a 100644 --- a/lib/misc.js +++ b/lib/misc.js @@ -110,7 +110,7 @@ Volcanos("misc", {help: "工具模块", Message: function(event, can) { var msg Runs: shy("请求后端", {order: 0}, function(event, can, dataset, cmds, cb) { var key = dataset.names+"."+cmds.join(",") if (can.user.isLocalFile) { var msg = can.request(event); msg.Clear("append") - var res = Volcanos.meta.pack[key]; res && msg.Copy(res) + var res = Volcanos.meta.pack[key]; res? msg.Copy(res): can.user.toast(can, "缺失数据") return typeof cb == "function" && cb(msg) } can.misc.Run(event, can, dataset, cmds, function(msg) { diff --git a/lib/user.js b/lib/user.js index ed4d2610..65b6f1eb 100644 --- a/lib/user.js +++ b/lib/user.js @@ -97,8 +97,9 @@ Volcanos("user", {help: "用户模块", agent: { var src = can.user.MergeURL(can, {_path: "/share/"+msg.Result()}, true) var ui = can.user.toast(can, { title: can.page.Format("a", "/share?share="+msg.Result(), "share"), - content: can.page.Format("img", src+"/share"), width: 300, height: 300, duration: 100000, - button: [{button: ["确定", function(event) { ui.Close() }]}], + content: can.page.Format("img", src+"/share"), + button: ["close"], duration: 100000, + width: 300, height: 300, }) }) }, diff --git a/pane/Header.js b/pane/Header.js index e4876edc..21ae2559 100644 --- a/pane/Header.js +++ b/pane/Header.js @@ -148,6 +148,11 @@ Volcanos("onaction", {help: "交互数据", list: [], _init: function(can, msg, can.onmotion.hidden(can, item) }) + can.onengine.listen(can, "storm.select", function(msg, river, storm) { + can.Conf("river", river), can.Conf("storm", storm) + }) + + can.onlayout.topic(can) can.user.isLocalFile? init(): can.run({}, ["check"], function(msg) { msg.Result()? init(): msg.Option("sso")? can.user.jumps(msg.Option("sso")): can.user.login(can, init) @@ -191,7 +196,10 @@ Volcanos("onaction", {help: "交互数据", list: [], _init: function(can, msg, can.core.Item(Volcanos.meta.pack, function(key, msg) { can.core.List(["_event", "_can", "_xhr", "sessid", ""], function(key) { delete(msg[key]) }) }) - var msg = can.request(event, {name: meta.name, content: JSON.stringify(Volcanos.meta.pack)}) + var msg = can.request(event, { + name: meta.name, content: JSON.stringify(Volcanos.meta.pack), + river: can.Conf("river"), storm: can.Conf("storm"), + }) var toast = can.user.toast(can, "打包中...", "webpack", 1000000) can.run(event, ["webpack"], function(msg) { diff --git a/pane/River.js b/pane/River.js index 29fdd9bf..d3881b76 100644 --- a/pane/River.js +++ b/pane/River.js @@ -1,6 +1,6 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, list, cb, target) { - can._main_river = can.user.Search(can, "river") || (can.user.isMobile||can.user.isExtension? "product": "project") - can._main_storm = can.user.Search(can, "storm") || (can.user.isMobile? "office": can.user.isExtension? "chrome": "studio") + can._main_river = can.user.Search(can, "river") || Volcanos.meta.args.river || (can.user.isMobile||can.user.isExtension? "product": "project") + can._main_storm = can.user.Search(can, "storm") || Volcanos.meta.args.storm || (can.user.isMobile? "office": can.user.isExtension? "chrome": "studio") can.onmotion.clear(can), can.sublist = {} var select; msg.Table(function(value, index, array) { diff --git a/proto.js b/proto.js index cd82c8bb..fe6379bd 100644 --- a/proto.js +++ b/proto.js @@ -11,7 +11,7 @@ function shy(help, meta, list, cb) { cb.list = next("object") || [] return cb }; var _can_name = "" -var Volcanos = shy("火山架", {pack: {}, libs: [], cache: {}}, [], function(name, can, libs, cb) { +var Volcanos = shy("火山架", {args: {}, pack: {}, libs: [], cache: {}}, [], function(name, can, libs, cb) { var meta = arguments.callee.meta, list = arguments.callee.list if (typeof name == "object") { var Config = name; _can_name = "" meta.libs = Config.libs, meta.volcano = Config.volcano @@ -23,7 +23,7 @@ var Volcanos = shy("火山架", {pack: {}, libs: [], cache: {}}, [], function(na // 根模块 name = Config.name, can = {_follow: Config.name, _target: document.body} - libs = Preload.concat(Config.main.list, Config.libs), cb = function(can) { + libs = Preload.concat(Config.libs, Config.main.list), cb = function(can) { can.onengine._init(can, can.Conf(Config), Config.panes, function(msg) { can.base.Log(can.user.title(), "run", can) document.body.onresize = function() { can.onlayout._init(can, can._target) } }, can._target)