Merge branch 'tomerge'
This commit is contained in:
commit
a76e0821ee
|
@ -1,5 +1,5 @@
|
|||
/*!
|
||||
* Omi v0.4.1 By dntzhang
|
||||
* Omi v0.4.2 By dntzhang
|
||||
* Github: https://github.com/AlloyTeam/omi
|
||||
* MIT Licensed.
|
||||
*/
|
||||
|
@ -1423,7 +1423,7 @@ return /******/ (function(modules) { // webpackBootstrap
|
|||
}, {
|
||||
key: '_generateHTMLCSS',
|
||||
value: function _generateHTMLCSS() {
|
||||
this.CSS = this.style() || '';
|
||||
this.CSS = (this.style() || '').replace(/<\/?style>/g, '');
|
||||
if (this.CSS) {
|
||||
this.CSS = _style2['default'].scoper(this.CSS, "[" + this._omi_scoped_attr + "]");
|
||||
if (this.CSS !== this._preCSS && !this._omi_server_rendering) {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*!
|
||||
* Omi v0.4.1 By dntzhang
|
||||
* Omi v0.4.2 By dntzhang
|
||||
* Github: https://github.com/AlloyTeam/omi
|
||||
* MIT Licensed.
|
||||
*/
|
||||
|
@ -806,7 +806,7 @@ return /******/ (function(modules) { // webpackBootstrap
|
|||
}, {
|
||||
key: '_generateHTMLCSS',
|
||||
value: function _generateHTMLCSS() {
|
||||
this.CSS = this.style() || '';
|
||||
this.CSS = (this.style() || '').replace(/<\/?style>/g, '');
|
||||
if (this.CSS) {
|
||||
this.CSS = _style2['default'].scoper(this.CSS, "[" + this._omi_scoped_attr + "]");
|
||||
if (this.CSS !== this._preCSS && !this._omi_server_rendering) {
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1431,7 +1431,7 @@
|
|||
}, {
|
||||
key: '_generateHTMLCSS',
|
||||
value: function _generateHTMLCSS() {
|
||||
this.CSS = this.style() || '';
|
||||
this.CSS = (this.style() || '').replace(/<\/?style>/g, '');
|
||||
if (this.CSS) {
|
||||
this.CSS = _style2['default'].scoper(this.CSS, "[" + this._omi_scoped_attr + "]");
|
||||
if (this.CSS !== this._preCSS && !this._omi_server_rendering) {
|
||||
|
|
|
@ -124,7 +124,7 @@
|
|||
_createClass(Hello, [{
|
||||
key: 'style',
|
||||
value: function style() {
|
||||
return '\n h1{\n \tcursor:pointer;\n }\n ';
|
||||
return '\n <style>\n h1{\n cursor:pointer;\n }\n </style>\n ';
|
||||
}
|
||||
}, {
|
||||
key: 'handleClick',
|
||||
|
@ -404,8 +404,8 @@
|
|||
component._omi_increment = increment;
|
||||
component.install();
|
||||
component._render(true);
|
||||
component.installed();
|
||||
component._childrenInstalled(component);
|
||||
component.installed();
|
||||
return component;
|
||||
};
|
||||
|
||||
|
@ -1156,8 +1156,8 @@
|
|||
if (this._omi_server_rendering || isReRendering) {
|
||||
this.install();
|
||||
this._render(true);
|
||||
this.installed();
|
||||
this._childrenInstalled(this);
|
||||
this.installed();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1186,6 +1186,7 @@
|
|||
key: 'update',
|
||||
value: function update() {
|
||||
this.beforeUpdate();
|
||||
this._childrenBeforeUpdate(this);
|
||||
if (this.renderTo) {
|
||||
this._render();
|
||||
} else {
|
||||
|
@ -1204,8 +1205,29 @@
|
|||
}
|
||||
//update added components
|
||||
this._renderAddedChildren();
|
||||
this._childrenAfterUpdate(this);
|
||||
this.afterUpdate();
|
||||
}
|
||||
}, {
|
||||
key: '_childrenBeforeUpdate',
|
||||
value: function _childrenBeforeUpdate(root) {
|
||||
var _this = this;
|
||||
|
||||
root.children.forEach(function (child) {
|
||||
child.beforeUpdate();
|
||||
_this._childrenBeforeUpdate(child);
|
||||
});
|
||||
}
|
||||
}, {
|
||||
key: '_childrenAfterUpdate',
|
||||
value: function _childrenAfterUpdate(root) {
|
||||
var _this2 = this;
|
||||
|
||||
root.children.forEach(function (child) {
|
||||
_this2._childrenAfterUpdate(child);
|
||||
child.afterUpdate();
|
||||
});
|
||||
}
|
||||
}, {
|
||||
key: 'setData',
|
||||
value: function setData(data, update) {
|
||||
|
@ -1237,10 +1259,10 @@
|
|||
}, {
|
||||
key: 'setComponentOrder',
|
||||
value: function setComponentOrder(arr) {
|
||||
var _this = this;
|
||||
var _this3 = this;
|
||||
|
||||
arr.forEach(function (item, index) {
|
||||
_this._omi_order[index] = item;
|
||||
_this3._omi_order[index] = item;
|
||||
});
|
||||
this.update();
|
||||
}
|
||||
|
@ -1280,10 +1302,10 @@
|
|||
}, {
|
||||
key: '_renderAddedChildren',
|
||||
value: function _renderAddedChildren() {
|
||||
var _this2 = this;
|
||||
var _this4 = this;
|
||||
|
||||
this._addedItems.forEach(function (item) {
|
||||
var target = typeof item.el === "string" ? _this2.node.querySelector(item.el) : item.el;
|
||||
var target = typeof item.el === "string" ? _this4.node.querySelector(item.el) : item.el;
|
||||
item.component.install();
|
||||
item.component._render(true);
|
||||
item.component.installed();
|
||||
|
@ -1297,7 +1319,7 @@
|
|||
}, {
|
||||
key: '_render',
|
||||
value: function _render(isFirst) {
|
||||
var _this3 = this;
|
||||
var _this5 = this;
|
||||
|
||||
if (this._omi_removed) {
|
||||
var node = this._createHiddenNode();
|
||||
|
@ -1313,11 +1335,11 @@
|
|||
this._extractChildren(this);
|
||||
if (isFirst) {
|
||||
this.children.forEach(function (item, index) {
|
||||
_this3._omi_order[index] = index;
|
||||
_this5._omi_order[index] = index;
|
||||
});
|
||||
}
|
||||
this.children.forEach(function (item, index) {
|
||||
_this3.HTML = _this3.HTML.replace(item._omiChildStr, _this3.children[_this3._omi_order[index]].HTML);
|
||||
_this5.HTML = _this5.HTML.replace(item._omiChildStr, _this5.children[_this5._omi_order[index]].HTML);
|
||||
});
|
||||
this.HTML = (0, _event2['default'])(this.HTML, this.id);
|
||||
if (isFirst) {
|
||||
|
@ -1345,7 +1367,7 @@
|
|||
}, {
|
||||
key: '_childRender',
|
||||
value: function _childRender(childStr, isFirst) {
|
||||
var _this4 = this;
|
||||
var _this6 = this;
|
||||
|
||||
if (this._omi_removed) {
|
||||
this.HTML = '<input type="hidden" omi_scoped_' + this.id + ' >';
|
||||
|
@ -1357,11 +1379,11 @@
|
|||
this._extractChildren(this);
|
||||
if (isFirst) {
|
||||
this.children.forEach(function (item, index) {
|
||||
_this4._omi_order[index] = index;
|
||||
_this6._omi_order[index] = index;
|
||||
});
|
||||
}
|
||||
this.children.forEach(function (item, index) {
|
||||
_this4.HTML = _this4.HTML.replace(item._omiChildStr, _this4.children[_this4._omi_order[index]].HTML);
|
||||
_this6.HTML = _this6.HTML.replace(item._omiChildStr, _this6.children[_this6._omi_order[index]].HTML);
|
||||
});
|
||||
this.HTML = (0, _event2['default'])(this.HTML, this.id);
|
||||
return this.HTML;
|
||||
|
@ -1380,12 +1402,12 @@
|
|||
}, {
|
||||
key: '_mixRefs',
|
||||
value: function _mixRefs() {
|
||||
var _this5 = this;
|
||||
var _this7 = this;
|
||||
|
||||
var nodes = _omi2['default'].$$('*[ref]', this.node);
|
||||
nodes.forEach(function (node) {
|
||||
if (node.hasAttribute(_this5._omi_scoped_attr)) {
|
||||
_this5.refs[node.getAttribute('ref')] = node;
|
||||
if (node.hasAttribute(_this7._omi_scoped_attr)) {
|
||||
_this7.refs[node.getAttribute('ref')] = node;
|
||||
}
|
||||
});
|
||||
var attr = this.node.getAttribute('ref');
|
||||
|
@ -1396,28 +1418,28 @@
|
|||
}, {
|
||||
key: '_execPlugins',
|
||||
value: function _execPlugins() {
|
||||
var _this6 = this;
|
||||
var _this8 = this;
|
||||
|
||||
Object.keys(_omi2['default'].plugins).forEach(function (item) {
|
||||
var nodes = _omi2['default'].$$('*[' + item + ']', _this6.node);
|
||||
var nodes = _omi2['default'].$$('*[' + item + ']', _this8.node);
|
||||
nodes.forEach(function (node) {
|
||||
if (node.hasAttribute(_this6._omi_scoped_attr)) {
|
||||
_omi2['default'].plugins[item](node, _this6);
|
||||
if (node.hasAttribute(_this8._omi_scoped_attr)) {
|
||||
_omi2['default'].plugins[item](node, _this8);
|
||||
}
|
||||
});
|
||||
if (_this6.node.hasAttribute(item)) {
|
||||
_omi2['default'].plugins[item](_this6.node, _this6);
|
||||
if (_this8.node.hasAttribute(item)) {
|
||||
_omi2['default'].plugins[item](_this8.node, _this8);
|
||||
}
|
||||
});
|
||||
}
|
||||
}, {
|
||||
key: '_childrenInstalled',
|
||||
value: function _childrenInstalled(root) {
|
||||
var _this7 = this;
|
||||
var _this9 = this;
|
||||
|
||||
root.children.forEach(function (child) {
|
||||
_this9._childrenInstalled(child);
|
||||
child.installed();
|
||||
_this7._childrenInstalled(child);
|
||||
});
|
||||
}
|
||||
}, {
|
||||
|
@ -1490,7 +1512,7 @@
|
|||
}, {
|
||||
key: '_generateHTMLCSS',
|
||||
value: function _generateHTMLCSS() {
|
||||
this.CSS = this.style() || '';
|
||||
this.CSS = (this.style() || '').replace(/<\/?style>/g, '');
|
||||
if (this.CSS) {
|
||||
this.CSS = _style2['default'].scoper(this.CSS, "[" + this._omi_scoped_attr + "]");
|
||||
if (this.CSS !== this._preCSS && !this._omi_server_rendering) {
|
||||
|
@ -1516,13 +1538,13 @@
|
|||
}, {
|
||||
key: '_getDataset',
|
||||
value: function _getDataset(childStr) {
|
||||
var _this8 = this;
|
||||
var _this10 = this;
|
||||
|
||||
var json = (0, _html2json2['default'])(childStr);
|
||||
var attr = json.child[0].attr;
|
||||
Object.keys(attr).forEach(function (key) {
|
||||
if (key.indexOf('data-') === 0) {
|
||||
_this8._dataset[_this8._capitalize(key.replace('data-', ''))] = attr[key];
|
||||
_this10._dataset[_this10._capitalize(key.replace('data-', ''))] = attr[key];
|
||||
}
|
||||
});
|
||||
return this._dataset;
|
||||
|
@ -1550,7 +1572,7 @@
|
|||
}, {
|
||||
key: '_extractChildren',
|
||||
value: function _extractChildren(child) {
|
||||
var _this9 = this;
|
||||
var _this11 = this;
|
||||
|
||||
if (_omi2['default'].customTags.length > 0) {
|
||||
child.HTML = this._replaceTags(_omi2['default'].customTags, child.HTML);
|
||||
|
@ -1563,7 +1585,7 @@
|
|||
var attr = json.child[0].attr;
|
||||
var name = attr.tag;
|
||||
delete attr.tag;
|
||||
var cmi = _this9.children[i];
|
||||
var cmi = _this11.children[i];
|
||||
//if not first time to invoke _extractChildren method
|
||||
if (cmi && cmi.___omi_constructor_name === name) {
|
||||
cmi._childRender(childStr);
|
||||
|
@ -1592,11 +1614,11 @@
|
|||
} else {
|
||||
child._omiGroupDataCounter[value] = 0;
|
||||
}
|
||||
groupData = _this9._extractPropertyFromString(value, child)[child._omiGroupDataCounter[value]];
|
||||
groupData = _this11._extractPropertyFromString(value, child)[child._omiGroupDataCounter[value]];
|
||||
} else if (key.indexOf('data-') === 0) {
|
||||
dataset[_this9._capitalize(key.replace('data-', ''))] = value;
|
||||
dataset[_this11._capitalize(key.replace('data-', ''))] = value;
|
||||
} else if (key === 'data') {
|
||||
dataFromParent = _this9._extractPropertyFromString(value, child);
|
||||
dataFromParent = _this11._extractPropertyFromString(value, child);
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
@ -6,9 +6,11 @@ class Hello extends Omi.Component {
|
|||
}
|
||||
style () {
|
||||
return `
|
||||
h1{
|
||||
cursor:pointer;
|
||||
}
|
||||
<style>
|
||||
h1{
|
||||
cursor:pointer;
|
||||
}
|
||||
</style>
|
||||
`;
|
||||
}
|
||||
handleClick(target, evt){
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "omi",
|
||||
"version": "0.4.1",
|
||||
"version": "0.4.2",
|
||||
"description": "Open and modern framework for building user interfaces.",
|
||||
"main": "dist/omi.js",
|
||||
"scripts": {
|
||||
|
|
|
@ -350,7 +350,7 @@ class Component {
|
|||
}
|
||||
|
||||
_generateHTMLCSS() {
|
||||
this.CSS = this.style() || '';
|
||||
this.CSS = (this.style()|| '').replace(/<\/?style>/g,'') ;
|
||||
if (this.CSS) {
|
||||
this.CSS = style.scoper(this.CSS, "[" + this._omi_scoped_attr + "]");
|
||||
if (this.CSS !== this._preCSS && !this._omi_server_rendering) {
|
||||
|
|
|
@ -72,7 +72,7 @@ if(ENV === 'build'||ENV === 'build_min'){
|
|||
},
|
||||
plugins: [
|
||||
// Avoid publishing files when compilation fails
|
||||
new webpack.BannerPlugin(" Omi v0.4.1 By dntzhang \r\n Github: https://github.com/AlloyTeam/omi\r\n MIT Licensed."),
|
||||
new webpack.BannerPlugin(" Omi v0.4.2 By dntzhang \r\n Github: https://github.com/AlloyTeam/omi\r\n MIT Licensed."),
|
||||
new webpack.NoErrorsPlugin()
|
||||
],
|
||||
stats: {
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
}else if(type==='hello'){
|
||||
goto('http://alloyteam.github.io/omi/example/playground/index.html?code=class%20Hello%20extends%20Omi.Component%20%7B%0A%20%20%20%20constructor(data)%20%7B%0A%20%20%20%20%20%20%20%20super(data)%3B%0A%20%20%20%20%7D%0A%20%20%20%20style%20()%20%7B%0A%20%20%20%20%20%20%20%20return%20%20%60%0A%20%20%20%20%20%20%20%20%20%20%20%20h1%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20cursor%3Apointer%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%60%3B%0A%20%20%20%20%7D%0A%20%20%20%20handleClick(target%2C%20evt)%7B%0A%20%20%20%20%20%20%20%20alert(target.innerHTML)%3B%0A%20%20%20%20%7D%0A%20%20%20%20render()%20%7B%0A%20%20%20%20%20%20%20%20return%20%20%60%0A%20%20%20%20%20%20%20%20%3Cdiv%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Ch1%20onclick%3D%22handleClick(this%2C%20event)%22%3EHello%20%2C%7B%7Bname%7D%7D!%3C%2Fh1%3E%0A%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%60%3B%0A%0A%20%20%20%20%7D%0A%7D%0A%0AOmi.render(new%20Hello(%7B%20name%20%3A%20%22Omi%22%20%7D)%2C%22%23container%22)%3B');
|
||||
}else if(type==='hello_nest'){
|
||||
goto('http://alloyteam.github.io/omi/example/playground/index.html?code=class%20Hello%20extends%20Omi.Component%20%7B%0A%20%20%20%20constructor(data)%20%7B%0A%20%20%20%20%20%20super(data)%3B%0A%20%20%20%20%7D%0A%20%20%20%20style%20()%20%7B%0A%20%20%20%20%20%20return%20%20%60%0A%20%20%20%20%20%20h1%7B%0A%20%20%20%20%20%20%09cursor%3Apointer%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%60%3B%0A%20%20%20%20%7D%0A%20%20%20%20handleClick(target%2C%20evt)%7B%0A%20%20%20%20%20%20alert(target.innerHTML)%3B%0A%20%20%20%20%7D%0A%20%20%20%20render()%20%7B%0A%20%20%20%20%20%20return%20%20%60%0A%20%20%20%20%20%20%3Cdiv%3E%0A%20%20%20%20%20%20%09%3Ch1%20onclick%3D%22handleClick(this%2C%20event)%22%3EHello%20%2C%7B%7Bname%7D%7D!%3C%2Fh1%3E%0A%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%09%09%60%3B%0A%0A%20%20%20%20%7D%0A%7D%0A%0AOmi.makeHTML(%27Hello%27%2C%20Hello)%3B%0A%0Aclass%20App%20extends%20Omi.Component%20%7B%0A%20%20%20%20constructor(data)%20%7B%0A%20%20%20%20%20%20%20%20super(data)%3B%0A%20%20%20%20%7D%0A%20%20%0A%20%20%20%20render()%20%7B%0A%20%20%20%20%20%20%20%20return%20%20%60%0A%20%20%20%20%20%20%20%20%3Cdiv%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3CHello%20data-name%3D%22Omi%22%20%2F%3E%0A%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%60%3B%0A%0A%20%20%20%20%7D%0A%7D%0A%0AOmi.render(new%20App()%2C%22%23container%22)%3B');
|
||||
goto('http://alloyteam.github.io/omi/example/playground/index.html?code=class%20Hello%20extends%20Omi.Component%20%7B%0A%20%20%20%20constructor(data)%20%7B%0A%20%20%20%20%20%20super(data)%3B%0A%20%20%20%20%7D%0A%20%20%20%20style%20()%20%7B%0A%20%20%20%20%20%20return%20%20%60%0A%20%20%20%20%20%20%20%20%3Cstyle%3E%0A%20%20%20%20%20%20%20%20%20%20h1%7B%0A%20%20%20%20%20%20%20%20%20%20%09cursor%3Apointer%3B%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%3C%2Fstyle%3E%0A%20%20%20%20%20%20%60%3B%0A%20%20%20%20%7D%0A%20%20%20%20handleClick(target%2C%20evt)%7B%0A%20%20%20%20%20%20alert(target.innerHTML)%3B%0A%20%20%20%20%7D%0A%20%20%20%20render()%20%7B%0A%20%20%20%20%20%20return%20%20%60%0A%20%20%20%20%20%20%3Cdiv%3E%0A%20%20%20%20%20%20%09%3Ch1%20onclick%3D%22handleClick(this%2C%20event)%22%3EHello%20%2C%7B%7Bname%7D%7D!%3C%2Fh1%3E%0A%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%09%09%60%3B%0A%0A%20%20%20%20%7D%0A%7D%0A%0AOmi.makeHTML(%27Hello%27%2C%20Hello)%3B%0A%0Aclass%20App%20extends%20Omi.Component%20%7B%0A%20%20%20%20constructor(data)%20%7B%0A%20%20%20%20%20%20%20%20super(data)%3B%0A%20%20%20%20%7D%0A%20%20%0A%20%20%20%20render()%20%7B%0A%20%20%20%20%20%20%20%20return%20%20%60%0A%20%20%20%20%20%20%20%20%3Cdiv%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3CHello%20data-name%3D%22Omi%22%20%2F%3E%0A%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%60%3B%0A%0A%20%20%20%20%7D%0A%7D%0A%0AOmi.render(new%20App()%2C%22%23container%22)%3B');
|
||||
}else if(type==='todo'){
|
||||
goto('http://alloyteam.github.io/omi/example/playground/index.html?code=class%20Todo%20extends%20Omi.Component%20%7B%0A%20%20%20%20constructor(data)%20%7B%0A%20%20%20%20%20%20%20%20super(data)%3B%0A%20%20%20%20%7D%0A%20%20%20%20add%20(evt)%20%7B%0A%20%20%20%20%20%20%20%20evt.preventDefault()%3B%0A%20%20%20%20%20%20%20%20this.data.items.push(this.data.text)%3B%0A%20%20%20%20%20%20%20%20this.data.text%20%3D%20%27%27%3B%0A%20%20%20%20%20%20%20%20this.update()%3B%0A%20%20%20%20%7D%0A%0A%20%20%20%20style%20()%20%7B%0A%20%20%20%20%20%20%20%20return%20%60%0A%20%20%20%20%20%20%20%20h3%20%7B%20color%3Ared%3B%20%7D%0A%20%20%20%20%20%20%20%20button%7B%20color%3Agreen%3B%7D%0A%20%20%20%20%20%20%20%20%60%3B%0A%20%20%20%20%7D%0A%0A%20%20%20%20handleChange(target)%7B%0A%20%20%20%20%20%20%20%20this.data.text%20%3D%20target.value%3B%0A%20%20%20%20%7D%0A%0A%20%20%20%20render%20()%20%7B%0A%20%20%20%20%20%20%20%20return%20%60%3Cdiv%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Ch3%3ETODO%3C%2Fh3%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cul%3E%20%7B%7B%23items%7D%7D%20%3Cli%3E%7B%7B.%7D%7D%3C%2Fli%3E%20%7B%7B%2Fitems%7D%7D%3C%2Ful%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cform%20onsubmit%3D%22add(event)%22%20%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cinput%20type%3D%22text%22%20onchange%3D%22handleChange(this)%22%20%20value%3D%22%7B%7Btext%7D%7D%22%20%20%2F%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cbutton%3EAdd%20%23%7B%7Bitems.length%7D%7D%3C%2Fbutton%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fform%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%60%3B%0A%20%20%20%20%7D%0A%7D%0A%0A%0AOmi.render(new%20Todo(%7B%20items%3A%20%5B%27Omi%27%2C%27dntzhang%27%2C%27AlloyTeam%27%5D%20%2C%20text%20%3A%20%27%27%20%7D)%2C%27%23container%27)%3B');
|
||||
}else if(type==='todo_nest'){
|
||||
|
|
Loading…
Reference in New Issue