render-core 1.0.19 → 1.0.22

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.
@@ -30,7 +30,7 @@ export declare class Component implements RenderBase {
30
30
  constructor(config: {
31
31
  name: string;
32
32
  template: string;
33
- props?: {};
33
+ props?: {} | string[];
34
34
  data?: {};
35
35
  computed?: {};
36
36
  methods?: {};
@@ -6,7 +6,7 @@ var Component = /** @class */ (function () {
6
6
  this.template = config.template;
7
7
  //添加数据
8
8
  if (typeof config.props == "undefined") {
9
- this.props = {};
9
+ this.props = [];
10
10
  }
11
11
  else {
12
12
  this.props = config.props;
@@ -1,25 +1,29 @@
1
+ import { isUnKnown } from "../utility/checkUtility";
1
2
  export function resolver_bind(nodes, data) {
2
3
  for (var i = 0; i < nodes.length; i++) {
3
- var attributes = nodes[i].getAttributeNames();
4
- for (var j = 0; j < attributes.length; j++) {
5
- var result = attributes[j].match(/^v-bind:([a-z]+)$/g);
6
- if (result === null) {
7
- }
8
- else {
9
- for (var k = 0; k < result.length; k++) {
10
- var property = result[k].substring(7);
11
- var dataName = nodes[i].getAttribute(result[k]);
12
- nodes[i].removeAttribute(result[k]);
13
- try {
14
- nodes[i].setAttribute(property, JSON.stringify(data[dataName]));
15
- }
16
- catch (e) {
17
- nodes[i].setAttribute(property, data[dataName]);
4
+ //对系统元素进行属性绑定
5
+ if (isUnKnown(nodes[i].nodeName)) {
6
+ var attributes = nodes[i].getAttributeNames();
7
+ for (var j = 0; j < attributes.length; j++) {
8
+ var result = attributes[j].match(/^v-bind:([a-z]+)$/g);
9
+ if (result === null) {
10
+ }
11
+ else {
12
+ for (var k = 0; k < result.length; k++) {
13
+ var property = result[k].substring(7);
14
+ var dataName = nodes[i].getAttribute(result[k]);
15
+ nodes[i].removeAttribute(result[k]);
16
+ try {
17
+ nodes[i].setAttribute(property, JSON.stringify(data[dataName]));
18
+ }
19
+ catch (e) {
20
+ nodes[i].setAttribute(property, data[dataName]);
21
+ }
18
22
  }
19
23
  }
20
24
  }
25
+ var subElements = nodes[i].children;
26
+ resolver_bind(subElements, data);
21
27
  }
22
- var subElements = nodes[i].children;
23
- resolver_bind(subElements, data);
24
28
  }
25
29
  }
package/core/cmd/v-ref.js CHANGED
@@ -1,10 +1,9 @@
1
- import { getProxyForInject } from "../proxy/getProxy";
2
1
  export function resolver_Ref(el) {
3
- var ref = new Map();
2
+ var refs = new Map();
4
3
  for (var i = 0; i < el.length; i++) {
5
4
  if (el[i].hasAttribute("ref")) {
6
- ref.set(el[i].getAttribute("ref"), el[i]);
5
+ refs.set(el[i].getAttribute("ref"), el[i]);
7
6
  }
8
7
  }
9
- return getProxyForInject(ref);
8
+ return refs;
10
9
  }
@@ -1,5 +1,2 @@
1
1
  import { Controller } from "../../class/controller";
2
- import { ApiController } from "../../class/apiController";
3
2
  export declare function getProxyObject(obj: {}, updater: Controller): any;
4
- export declare function getProxyObjectForApi(obj: {}, updater: ApiController): any;
5
- export declare function getProxyForInject(obj: {}): any;
@@ -1,4 +1,4 @@
1
- import { getSetter, getSetterForApi, getSetterForInject } from "../../library/setter/setter";
1
+ import { getSetter } from "../../library/setter/setter";
2
2
  export function getProxyObject(obj, updater) {
3
3
  //定义代理方法对象
4
4
  var handel = {};
@@ -7,13 +7,3 @@ export function getProxyObject(obj, updater) {
7
7
  //返回代理对象
8
8
  return new Proxy(obj, handel);
9
9
  }
10
- export function getProxyObjectForApi(obj, updater) {
11
- var handel = {};
12
- handel["set"] = getSetterForApi(obj, updater);
13
- return new Proxy(obj, handel);
14
- }
15
- export function getProxyForInject(obj) {
16
- var handel = {};
17
- handel["set"] = getSetterForInject(obj);
18
- return new Proxy(obj, handel);
19
- }
@@ -1 +1,3 @@
1
1
  export declare function resolveProps(node: Element, properties: {} | []): any;
2
+ export declare function getAllPropsByArray(node: Element, array: Array<string>): any;
3
+ export declare function getAllPropsByObject(node: Element, object: {}): any;
@@ -1,14 +1,41 @@
1
- import { getProxyForInject } from "../proxy/getProxy";
2
1
  export function resolveProps(node, properties) {
3
2
  if (properties instanceof Array) {
3
+ return getAllPropsByArray(node, properties);
4
4
  }
5
5
  if (properties instanceof Object) {
6
+ return getAllPropsByObject(node, properties);
6
7
  }
7
- var attrs = node.attributes;
8
+ }
9
+ export function getAllPropsByArray(node, array) {
10
+ var props = new Map();
11
+ array.forEach(function (value, index) {
12
+ if (node.getAttribute(value)) {
13
+ props.set(value, node.getAttribute(value));
14
+ }
15
+ });
16
+ }
17
+ export function getAllPropsByObject(node, object) {
8
18
  var props = new Map();
9
- // for (let key in Object.getOwnPropertyNames(properties)) {
10
- //
11
- // props[key] = attrs.getNamedItem(key).value;
12
- // }
13
- return getProxyForInject(props);
19
+ for (var objectKey in object) {
20
+ if (node.getAttribute(objectKey)) {
21
+ switch (node.getAttribute(objectKey)) {
22
+ case "int":
23
+ props.set(objectKey, parseInt(node.getAttribute(objectKey)));
24
+ break;
25
+ case "float":
26
+ props.set(objectKey, parseFloat(node.getAttribute(objectKey)));
27
+ break;
28
+ case "object":
29
+ props.set(objectKey, JSON.parse(node.getAttribute(objectKey)));
30
+ break;
31
+ case "array":
32
+ props.set(objectKey, JSON.parse(node.getAttribute(objectKey)));
33
+ break;
34
+ default:
35
+ props.set(objectKey, node.getAttribute(objectKey));
36
+ break;
37
+ }
38
+ }
39
+ }
40
+ return props;
14
41
  }
@@ -1,4 +1,3 @@
1
- import { getProxyForInject } from "../proxy/getProxy";
2
1
  export function resolve_Queries() {
3
2
  var query = new Map();
4
3
  if (location.search !== undefined) {
@@ -9,5 +8,5 @@ export function resolve_Queries() {
9
8
  Reflect.set(query, results[0], results[1]);
10
9
  });
11
10
  }
12
- return getProxyForInject(query);
11
+ return query;
13
12
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "render-core",
3
- "version": "1.0.19",
3
+ "version": "1.0.22",
4
4
  "description": "The router for render-js",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",