omi 3.0.3
This commit is contained in:
parent
702950a660
commit
07127c7619
|
@ -255,8 +255,8 @@ npm i omi
|
|||
|
||||
或从 CDN 获取:
|
||||
|
||||
* [https://unpkg.com/omi@3.0.2/dist/omi.min.js](https://unpkg.com/omi@3.0.2/dist/omi.min.js)
|
||||
* [https://unpkg.com/omi@3.0.2/dist/omi.js](https://unpkg.com/omi@3.0.2/dist/omi.js)
|
||||
* [https://unpkg.com/omi@3.0.3/dist/omi.min.js](https://unpkg.com/omi@3.0.3/dist/omi.min.js)
|
||||
* [https://unpkg.com/omi@3.0.3/dist/omi.js](https://unpkg.com/omi@3.0.3/dist/omi.js)
|
||||
|
||||
## Official Plugins
|
||||
|
||||
|
|
|
@ -252,8 +252,8 @@ npm i omi
|
|||
|
||||
or get it from CDN:
|
||||
|
||||
* [https://unpkg.com/omi@3.0.2/dist/omi.min.js](https://unpkg.com/omi@3.0.2/dist/omi.min.js)
|
||||
* [https://unpkg.com/omi@3.0.2/dist/omi.js](https://unpkg.com/omi@3.0.2/dist/omi.js)
|
||||
* [https://unpkg.com/omi@3.0.3/dist/omi.min.js](https://unpkg.com/omi@3.0.3/dist/omi.min.js)
|
||||
* [https://unpkg.com/omi@3.0.3/dist/omi.js](https://unpkg.com/omi@3.0.3/dist/omi.js)
|
||||
|
||||
## Official Plugins
|
||||
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
# omi 3.0.3
|
||||
|
||||
* SSR
|
||||
* fix render args
|
||||
|
||||
Remove the _dirty prop of component for ssr and free updating.
|
||||
|
||||
# omi 3.0.2
|
||||
|
||||
Remove the _dirty prop of component for ssr and free updating.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/**
|
||||
* omi v3.0.2 http://omijs.org
|
||||
* omi v3.0.3 http://omijs.org
|
||||
* Omi === Preact + Scoped CSS + Store System + Native Support in 3kb javascript.
|
||||
* By dntzhang https://github.com/dntzhang
|
||||
* Github: https://github.com/AlloyTeam/omi
|
||||
|
@ -1388,15 +1388,25 @@
|
|||
* const Thing = ({ name }) => <span>{ name }</span>;
|
||||
* render(<Thing name="one" />, document.querySelector('#foo'));
|
||||
*/
|
||||
function render(vnode, parent, merge) {
|
||||
function render(vnode, parent, merge, ssrRoot) {
|
||||
var m = isElement(merge) || merge === undefined;
|
||||
if (typeof window === 'undefined') {
|
||||
if (vnode instanceof Component && !m) {
|
||||
vnode.$store = merge;
|
||||
}
|
||||
return;
|
||||
}
|
||||
options.staticStyleRendered = false;
|
||||
parent = typeof parent === 'string' ? document.querySelector(parent) : parent;
|
||||
if (ssrRoot) {
|
||||
ssrRoot = document.querySelector(ssrRoot);
|
||||
}
|
||||
if (merge === true) {
|
||||
while (parent.firstChild) {
|
||||
parent.removeChild(parent.firstChild);
|
||||
}
|
||||
}
|
||||
var m = isElement(merge) || merge === undefined;
|
||||
|
||||
if (vnode instanceof Component) {
|
||||
if (window && window.Omi) {
|
||||
window.Omi.instances.push(vnode);
|
||||
|
@ -1406,7 +1416,7 @@
|
|||
}
|
||||
if (vnode.componentWillMount) vnode.componentWillMount();
|
||||
if (vnode.install) vnode.install();
|
||||
var rendered = vnode.render();
|
||||
var rendered = vnode.render(vnode.props, vnode.state, vnode.context);
|
||||
if (vnode.style) {
|
||||
addScopedAttr(rendered, vnode.style(), '_style_' + vnode._id, vnode);
|
||||
}
|
||||
|
@ -1416,7 +1426,7 @@
|
|||
addScopedAttrStatic(rendered, vnode.staticStyle(), '_style_' + vnode.constructor.name, !vnode.base);
|
||||
}
|
||||
|
||||
vnode.base = diff(m ? merge : undefined, rendered, {}, false, parent, false);
|
||||
vnode.base = diff(m ? merge : ssrRoot, rendered, {}, false, parent, false);
|
||||
|
||||
if (vnode.componentDidMount) vnode.componentDidMount();
|
||||
if (vnode.installed) vnode.installed();
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -1,5 +1,5 @@
|
|||
/**
|
||||
* omi v3.0.2 http://omijs.org
|
||||
* omi v3.0.3 http://omijs.org
|
||||
* Omi === Preact + Scoped CSS + Store System + Native Support in 3kb javascript.
|
||||
* By dntzhang https://github.com/dntzhang
|
||||
* Github: https://github.com/AlloyTeam/omi
|
||||
|
@ -1385,15 +1385,25 @@ function isElement(obj) {
|
|||
* const Thing = ({ name }) => <span>{ name }</span>;
|
||||
* render(<Thing name="one" />, document.querySelector('#foo'));
|
||||
*/
|
||||
function render(vnode, parent, merge) {
|
||||
function render(vnode, parent, merge, ssrRoot) {
|
||||
var m = isElement(merge) || merge === undefined;
|
||||
if (typeof window === 'undefined') {
|
||||
if (vnode instanceof Component && !m) {
|
||||
vnode.$store = merge;
|
||||
}
|
||||
return;
|
||||
}
|
||||
options.staticStyleRendered = false;
|
||||
parent = typeof parent === 'string' ? document.querySelector(parent) : parent;
|
||||
if (ssrRoot) {
|
||||
ssrRoot = document.querySelector(ssrRoot);
|
||||
}
|
||||
if (merge === true) {
|
||||
while (parent.firstChild) {
|
||||
parent.removeChild(parent.firstChild);
|
||||
}
|
||||
}
|
||||
var m = isElement(merge) || merge === undefined;
|
||||
|
||||
if (vnode instanceof Component) {
|
||||
if (window && window.Omi) {
|
||||
window.Omi.instances.push(vnode);
|
||||
|
@ -1403,7 +1413,7 @@ function render(vnode, parent, merge) {
|
|||
}
|
||||
if (vnode.componentWillMount) vnode.componentWillMount();
|
||||
if (vnode.install) vnode.install();
|
||||
var rendered = vnode.render();
|
||||
var rendered = vnode.render(vnode.props, vnode.state, vnode.context);
|
||||
if (vnode.style) {
|
||||
addScopedAttr(rendered, vnode.style(), '_style_' + vnode._id, vnode);
|
||||
}
|
||||
|
@ -1413,7 +1423,7 @@ function render(vnode, parent, merge) {
|
|||
addScopedAttrStatic(rendered, vnode.staticStyle(), '_style_' + vnode.constructor.name, !vnode.base);
|
||||
}
|
||||
|
||||
vnode.base = diff(m ? merge : undefined, rendered, {}, false, parent, false);
|
||||
vnode.base = diff(m ? merge : ssrRoot, rendered, {}, false, parent, false);
|
||||
|
||||
if (vnode.componentDidMount) vnode.componentDidMount();
|
||||
if (vnode.installed) vnode.installed();
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -490,28 +490,31 @@
|
|||
return "object" == typeof obj && 1 === obj.nodeType && "object" == typeof obj.style && "object" == typeof obj.ownerDocument;
|
||||
}
|
||||
}
|
||||
function render(vnode, parent, merge) {
|
||||
options.staticStyleRendered = !1;
|
||||
parent = 'string' == typeof parent ? document.querySelector(parent) : parent;
|
||||
if (!0 === merge) while (parent.firstChild) parent.removeChild(parent.firstChild);
|
||||
function render(vnode, parent, merge, ssrRoot) {
|
||||
var m = isElement(merge) || void 0 === merge;
|
||||
if (vnode instanceof Component) {
|
||||
if (window && window.Omi) window.Omi.instances.push(vnode);
|
||||
if (!m) vnode.$store = options.$store = merge;
|
||||
if (vnode.componentWillMount) vnode.componentWillMount();
|
||||
if (vnode.install) vnode.install();
|
||||
var rendered = vnode.render();
|
||||
if (vnode.style) addScopedAttr(rendered, vnode.style(), '_style_' + vnode.s, vnode);
|
||||
if (vnode.staticStyle) addScopedAttrStatic(rendered, vnode.staticStyle(), '_style_' + vnode.constructor.name, !vnode.base);
|
||||
vnode.base = diff(m ? merge : void 0, rendered, {}, !1, parent, !1);
|
||||
if (vnode.componentDidMount) vnode.componentDidMount();
|
||||
if (vnode.installed) vnode.installed();
|
||||
if ('undefined' != typeof window) {
|
||||
options.staticStyleRendered = !1;
|
||||
parent = 'string' == typeof parent ? document.querySelector(parent) : parent;
|
||||
if (ssrRoot) ssrRoot = document.querySelector(ssrRoot);
|
||||
if (!0 === merge) while (parent.firstChild) parent.removeChild(parent.firstChild);
|
||||
if (vnode instanceof Component) {
|
||||
if (window && window.Omi) window.Omi.instances.push(vnode);
|
||||
if (!m) vnode.$store = options.$store = merge;
|
||||
if (vnode.componentWillMount) vnode.componentWillMount();
|
||||
if (vnode.install) vnode.install();
|
||||
var rendered = vnode.render(vnode.props, vnode.state, vnode.context);
|
||||
if (vnode.style) addScopedAttr(rendered, vnode.style(), '_style_' + vnode.s, vnode);
|
||||
if (vnode.staticStyle) addScopedAttrStatic(rendered, vnode.staticStyle(), '_style_' + vnode.constructor.name, !vnode.base);
|
||||
vnode.base = diff(m ? merge : ssrRoot, rendered, {}, !1, parent, !1);
|
||||
if (vnode.componentDidMount) vnode.componentDidMount();
|
||||
if (vnode.installed) vnode.installed();
|
||||
options.staticStyleRendered = !0;
|
||||
return vnode.base;
|
||||
}
|
||||
var result = diff(merge, vnode, {}, !1, parent, !1);
|
||||
options.staticStyleRendered = !0;
|
||||
return vnode.base;
|
||||
}
|
||||
var result = diff(merge, vnode, {}, !1, parent, !1);
|
||||
options.staticStyleRendered = !0;
|
||||
return result;
|
||||
return result;
|
||||
} else if (vnode instanceof Component && !m) vnode.$store = merge;
|
||||
}
|
||||
var options = {
|
||||
scopedStyle: !0,
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "omi",
|
||||
"version": "3.0.2",
|
||||
"version": "3.0.3",
|
||||
"description": "Omi === Preact + Scoped CSS + Store System + Native Support in 3kb javascript.",
|
||||
"main": "dist/omi.js",
|
||||
"jsnext:main": "dist/omi.esm.js",
|
||||
|
|
|
@ -33,15 +33,25 @@ function isElement(obj) {
|
|||
* const Thing = ({ name }) => <span>{ name }</span>;
|
||||
* render(<Thing name="one" />, document.querySelector('#foo'));
|
||||
*/
|
||||
export function render(vnode, parent, merge) {
|
||||
export function render(vnode, parent, merge, ssrRoot) {
|
||||
const m = isElement(merge) || merge === undefined;
|
||||
if (typeof window === 'undefined') {
|
||||
if (vnode instanceof Component&&!m){
|
||||
vnode.$store = merge;
|
||||
}
|
||||
return;
|
||||
}
|
||||
options.staticStyleRendered = false;
|
||||
parent = typeof parent === 'string' ? document.querySelector(parent) : parent;
|
||||
if (ssrRoot){
|
||||
ssrRoot = document.querySelector(ssrRoot);
|
||||
}
|
||||
if (merge === true){
|
||||
while (parent.firstChild){
|
||||
parent.removeChild(parent.firstChild);
|
||||
}
|
||||
}
|
||||
const m = isElement(merge) || merge === undefined;
|
||||
|
||||
if (vnode instanceof Component) {
|
||||
if (window && window.Omi){
|
||||
window.Omi.instances.push(vnode);
|
||||
|
@ -61,7 +71,7 @@ export function render(vnode, parent, merge) {
|
|||
addScopedAttrStatic(rendered,vnode.staticStyle(),'_style_'+vnode.constructor.name, !vnode.base);
|
||||
}
|
||||
|
||||
vnode.base = diff(m ? merge : undefined, rendered, {}, false, parent, false);
|
||||
vnode.base = diff(m ? merge : ssrRoot, rendered, {}, false, parent, false);
|
||||
|
||||
if (vnode.componentDidMount) vnode.componentDidMount();
|
||||
if (vnode.installed) vnode.installed();
|
||||
|
|
Loading…
Reference in New Issue