mm_machine 1.7.6 → 1.7.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/demo/test1/demo.json +1 -1
- package/demo2/test1/demo.json +1 -1
- package/index.js +15 -18
- package/package.json +1 -1
- package/test.js +45 -44
package/demo/test1/demo.json
CHANGED
package/demo2/test1/demo.json
CHANGED
package/index.js
CHANGED
|
@@ -156,9 +156,6 @@ Item.prototype.loadObj = function(config) {
|
|
|
156
156
|
if (f) {
|
|
157
157
|
var file = f.fullname(this.dir);
|
|
158
158
|
if (file.hasFile()) {
|
|
159
|
-
if (!config.state) {
|
|
160
|
-
return;
|
|
161
|
-
}
|
|
162
159
|
var name = config.func_name;
|
|
163
160
|
var cs = $.require(file, (cs, way) => {
|
|
164
161
|
if (way == "change" && cs) {
|
|
@@ -325,7 +322,7 @@ Item.prototype.main = async function(...params) {
|
|
|
325
322
|
* @return {Object} 执行结果
|
|
326
323
|
*/
|
|
327
324
|
Item.prototype.run = async function(method, ...params) {
|
|
328
|
-
if (this
|
|
325
|
+
if (this[method]) {
|
|
329
326
|
if (this[method + "_before"]) {
|
|
330
327
|
this[method + "_before"](...params);
|
|
331
328
|
}
|
|
@@ -755,7 +752,7 @@ Index.prototype.run = async function(name, method, ...params) {
|
|
|
755
752
|
var result;
|
|
756
753
|
if (name) {
|
|
757
754
|
var o = await this.get(name);
|
|
758
|
-
if (o) {
|
|
755
|
+
if (o && o.config.state === 1) {
|
|
759
756
|
var ret = o.run(method, ...params);
|
|
760
757
|
if (util.types.isPromise(ret)) {
|
|
761
758
|
result = await ret;
|
|
@@ -770,11 +767,13 @@ Index.prototype.run = async function(name, method, ...params) {
|
|
|
770
767
|
var lt = this.list;
|
|
771
768
|
for (var i = 0; i < lt.length; i++) {
|
|
772
769
|
var o = lt[i];
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
770
|
+
if (o.config.state === 1) {
|
|
771
|
+
var ret = o.run(method, ...params);
|
|
772
|
+
if (util.types.isPromise(ret)) {
|
|
773
|
+
result = await ret;
|
|
774
|
+
} else {
|
|
775
|
+
result = ret;
|
|
776
|
+
}
|
|
778
777
|
}
|
|
779
778
|
}
|
|
780
779
|
}
|
|
@@ -792,7 +791,7 @@ Index.prototype.exec = async function(name, method, ...params) {
|
|
|
792
791
|
var result;
|
|
793
792
|
if (name) {
|
|
794
793
|
var o = await this.get(name);
|
|
795
|
-
if (o
|
|
794
|
+
if (o) {
|
|
796
795
|
var ret = o.run(method, ...params);
|
|
797
796
|
if (util.types.isPromise(ret)) {
|
|
798
797
|
result = await ret;
|
|
@@ -807,13 +806,11 @@ Index.prototype.exec = async function(name, method, ...params) {
|
|
|
807
806
|
var lt = this.list;
|
|
808
807
|
for (var i = 0; i < lt.length; i++) {
|
|
809
808
|
var o = lt[i];
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
result = ret;
|
|
816
|
-
}
|
|
809
|
+
var ret = o.run(method, ...params);
|
|
810
|
+
if (util.types.isPromise(ret)) {
|
|
811
|
+
result = await ret;
|
|
812
|
+
} else {
|
|
813
|
+
result = ret;
|
|
817
814
|
}
|
|
818
815
|
}
|
|
819
816
|
}
|
package/package.json
CHANGED
package/test.js
CHANGED
|
@@ -26,54 +26,55 @@ async function demo() {
|
|
|
26
26
|
var engine = new Engine();
|
|
27
27
|
console.info("→ 加载mod");
|
|
28
28
|
await engine.update("./".fullname(__dirname));
|
|
29
|
+
engine.run('demo1', 'init');
|
|
30
|
+
engine.exec('demo1', 'init');
|
|
31
|
+
// engine.run(null, 'init');
|
|
32
|
+
// console.log("模块数", engine.list.length);
|
|
29
33
|
|
|
30
|
-
|
|
31
|
-
|
|
34
|
+
// var i = 0;
|
|
35
|
+
// var timer = setInterval(async () => {
|
|
36
|
+
// await engine.run('demo1', 'main');
|
|
37
|
+
// await engine.run('demo2', 'main');
|
|
38
|
+
// i++;
|
|
39
|
+
// if (i == 5) {
|
|
40
|
+
// console.info("→ 重载mod");
|
|
41
|
+
// engine.reload("demo1");
|
|
42
|
+
// } else if (i == 8) {
|
|
43
|
+
// console.info("→ 卸载mod");
|
|
44
|
+
// engine.unload("demo2");
|
|
45
|
+
// } else if (i == 13) {
|
|
46
|
+
// console.info("→ 卸载并删除mod");
|
|
47
|
+
// engine.unload("demo1", true);
|
|
48
|
+
// } else if (i == 15) {
|
|
49
|
+
// clearTimeout(timer);
|
|
50
|
+
// process.exit(0);
|
|
51
|
+
// }
|
|
52
|
+
// }, 3000);
|
|
32
53
|
|
|
33
|
-
|
|
34
|
-
var
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
console.info("→ 重载mod");
|
|
40
|
-
engine.reload("demo1");
|
|
41
|
-
} else if (i == 8) {
|
|
42
|
-
console.info("→ 卸载mod");
|
|
43
|
-
engine.unload("demo2");
|
|
44
|
-
} else if (i == 13) {
|
|
45
|
-
console.info("→ 卸载并删除mod");
|
|
46
|
-
engine.unload("demo1", true);
|
|
47
|
-
} else if (i == 15) {
|
|
48
|
-
clearTimeout(timer);
|
|
49
|
-
process.exit(0);
|
|
50
|
-
}
|
|
51
|
-
}, 3000);
|
|
54
|
+
// setTimeout(() => {
|
|
55
|
+
// var file = "./demo/test1/index.js";
|
|
56
|
+
// var text = file.loadText();
|
|
57
|
+
// text = text.replace("123", "1234567");
|
|
58
|
+
// file.saveText(text);
|
|
59
|
+
// }, 7000)
|
|
52
60
|
|
|
53
|
-
setTimeout(() => {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
},
|
|
61
|
+
// setTimeout(() => {
|
|
62
|
+
// var file = "./demo/test2/index.js";
|
|
63
|
+
// var text = file.loadText();
|
|
64
|
+
// text = text.replace("123", "7654321");
|
|
65
|
+
// file.saveText(text);
|
|
66
|
+
// }, 20000)
|
|
59
67
|
|
|
60
|
-
setTimeout(() => {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
$.mod.config.watch = false;
|
|
71
|
-
// 失效后再加载的模块修改文件没有变化
|
|
72
|
-
var file = "./demo/test1/index.js";
|
|
73
|
-
var text = file.loadText();
|
|
74
|
-
text = text.replace("1234567", "7654321");
|
|
75
|
-
file.saveText(text);
|
|
76
|
-
}, 26000)
|
|
68
|
+
// setTimeout(() => {
|
|
69
|
+
// // 让热重载失效
|
|
70
|
+
// console.info("→ 热重载失效");
|
|
71
|
+
// $.mod.config.watch = false;
|
|
72
|
+
// // 失效后再加载的模块修改文件没有变化
|
|
73
|
+
// var file = "./demo/test1/index.js";
|
|
74
|
+
// var text = file.loadText();
|
|
75
|
+
// text = text.replace("1234567", "7654321");
|
|
76
|
+
// file.saveText(text);
|
|
77
|
+
// }, 26000)
|
|
77
78
|
}
|
|
78
79
|
|
|
79
80
|
/* 调用示例 */
|