render-core 1.0.32 → 1.0.33
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.
|
@@ -2,6 +2,7 @@ import { bindModelForUpdater } from "../utility/miscUtility";
|
|
|
2
2
|
import { findComponent } from "./initRender";
|
|
3
3
|
import { getTemplate } from "../../library/template/template";
|
|
4
4
|
import { cmdForUpdate } from "../../library/cmd/cmd";
|
|
5
|
+
import { injectProps } from "../../library/inject/inject";
|
|
5
6
|
export function updateRender(controller) {
|
|
6
7
|
//生成DOM
|
|
7
8
|
var tagTemplate = getTemplate(controller.proto);
|
|
@@ -29,6 +30,7 @@ export function updateRender(controller) {
|
|
|
29
30
|
//afterRender
|
|
30
31
|
var afterRender = controller.proto.getAfterRender().bind(controller.raw_data);
|
|
31
32
|
afterRender();
|
|
33
|
+
injectProps(controller, tagTemplate);
|
|
32
34
|
//获取定位
|
|
33
35
|
bindModelForUpdater(controller.root.children, controller.proxyForMethods);
|
|
34
36
|
//深度渲染
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Controller } from "../../class/controller";
|
|
2
2
|
import { Component } from "../../class/component";
|
|
3
3
|
export declare function inject(controller: Controller, tagTemplate: Element): void;
|
|
4
|
+
export declare function injectProps(controller: Controller, tagTemplate: Element): void;
|
|
4
5
|
export declare function injectMethod(controller: Controller, proto: Component): void;
|
|
5
6
|
export declare function injectWatcher(controller: Controller, proto: Component): void;
|
|
6
7
|
export declare function injectComputed(controller: Controller, proto: Component): void;
|
package/library/inject/inject.js
CHANGED
|
@@ -7,9 +7,10 @@ export function inject(controller, tagTemplate) {
|
|
|
7
7
|
getCodeSpaceForProps(controller.raw_data, resolveProps(Reflect.get(window, "context").crtTag, controller.proto.getProps()));
|
|
8
8
|
//注入query
|
|
9
9
|
getCodeSpaceForQuery(controller.raw_data, resolve_Queries());
|
|
10
|
-
|
|
10
|
+
}
|
|
11
|
+
export function injectProps(controller, tagTemplate) {
|
|
11
12
|
var refs = new Map();
|
|
12
|
-
resolver_Refs(
|
|
13
|
+
resolver_Refs(controller.root.children, refs);
|
|
13
14
|
getCodeSpaceForRef(controller.raw_data, refs);
|
|
14
15
|
}
|
|
15
16
|
export function injectMethod(controller, proto) {
|
package/library/render/render.js
CHANGED
|
@@ -2,7 +2,7 @@ import { Controller } from "../../class/controller";
|
|
|
2
2
|
import { getCodeSpaceForCommit, getCodeSpaceForPublish, getCommitMethod, getPublishMethod } from "../../core/utility/injectUtility";
|
|
3
3
|
import { getProxyObject } from "../../core/proxy/getProxy";
|
|
4
4
|
import { findComponent } from "../../core/render/initRender";
|
|
5
|
-
import { inject, injectComputed, injectMethod, injectWatcher } from "../inject/inject";
|
|
5
|
+
import { inject, injectComputed, injectMethod, injectProps, injectWatcher } from "../inject/inject";
|
|
6
6
|
import { cmd } from "../cmd/cmd";
|
|
7
7
|
export function init_render(proto, parent, child, link, tagTemplate) {
|
|
8
8
|
//获取控制对象
|
|
@@ -32,6 +32,9 @@ export function init_render(proto, parent, child, link, tagTemplate) {
|
|
|
32
32
|
beforeMount();
|
|
33
33
|
//mount
|
|
34
34
|
var renderSpace = document.createElement("div");
|
|
35
|
+
//指定渲染空间
|
|
36
|
+
controller.root = renderSpace;
|
|
37
|
+
//开始渲染
|
|
35
38
|
parent.replaceChild(renderSpace, child);
|
|
36
39
|
while (tagTemplate.hasChildNodes()) {
|
|
37
40
|
renderSpace.append(tagTemplate.firstChild);
|
|
@@ -39,8 +42,7 @@ export function init_render(proto, parent, child, link, tagTemplate) {
|
|
|
39
42
|
//afterRender
|
|
40
43
|
var afterRender = proto.getAfterRender().bind(controller.raw_data);
|
|
41
44
|
afterRender();
|
|
42
|
-
|
|
43
|
-
controller.root = renderSpace;
|
|
45
|
+
injectProps(controller, tagTemplate);
|
|
44
46
|
//将本控制对象保存到父控制对象的发布数组中
|
|
45
47
|
link.to.push(controller);
|
|
46
48
|
//将执行空间保存到父控制对象
|
|
@@ -76,7 +78,9 @@ export function post_render(proto, parent, child, link, tagTemplate) {
|
|
|
76
78
|
beforeMount();
|
|
77
79
|
//mount
|
|
78
80
|
var renderSpace = document.createElement("div");
|
|
81
|
+
//指定渲染空间
|
|
79
82
|
controller.root = renderSpace;
|
|
83
|
+
//开始渲染
|
|
80
84
|
parent.replaceChild(renderSpace, child);
|
|
81
85
|
while (tagTemplate.hasChildNodes()) {
|
|
82
86
|
renderSpace.append(tagTemplate.firstChild);
|
|
@@ -84,7 +88,10 @@ export function post_render(proto, parent, child, link, tagTemplate) {
|
|
|
84
88
|
//afterRender
|
|
85
89
|
var afterRender = proto.getAfterRender().bind(controller.raw_data);
|
|
86
90
|
afterRender();
|
|
91
|
+
injectProps(controller, tagTemplate);
|
|
87
92
|
link.to.push(controller);
|
|
93
|
+
//将执行空间保存到父控制对象
|
|
94
|
+
link.link.set(child.getAttribute("name"), controller.raw_data);
|
|
88
95
|
//深度渲染
|
|
89
96
|
findComponent(controller.root.children, controller);
|
|
90
97
|
}
|
|
@@ -116,7 +123,9 @@ export function raw_render(proto, parent, child, link, tagTemplate) {
|
|
|
116
123
|
beforeMount();
|
|
117
124
|
//mount
|
|
118
125
|
var renderSpace = document.createElement("div");
|
|
126
|
+
//指定渲染空间
|
|
119
127
|
controller.root = renderSpace;
|
|
128
|
+
//开始渲染
|
|
120
129
|
parent.replaceChild(renderSpace, child);
|
|
121
130
|
while (tagTemplate.hasChildNodes()) {
|
|
122
131
|
renderSpace.append(tagTemplate.firstChild);
|
|
@@ -124,6 +133,7 @@ export function raw_render(proto, parent, child, link, tagTemplate) {
|
|
|
124
133
|
//afterRender
|
|
125
134
|
var afterRender = proto.getAfterRender().bind(controller.raw_data);
|
|
126
135
|
afterRender();
|
|
136
|
+
injectProps(controller, tagTemplate);
|
|
127
137
|
link.to.push(controller);
|
|
128
138
|
//深度渲染
|
|
129
139
|
findComponent(controller.root.children, controller);
|