From 2cecf9210b99c64be7dda852db28c7805dbe3dcb Mon Sep 17 00:00:00 2001 From: OuYancey Date: Wed, 2 Aug 2017 20:58:34 +0800 Subject: [PATCH 1/3] lint fix webpack.config.js --- webpack.config.js | 69 +++++++++++++++++++++++------------------------ 1 file changed, 34 insertions(+), 35 deletions(-) diff --git a/webpack.config.js b/webpack.config.js index a0f9ea550..03624cf0f 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -1,13 +1,13 @@ -var path = require('path'); -var webpack = require('webpack'); -var packageJSON = require('./package.json'); +var path = require('path') +var webpack = require('webpack') +var packageJSON = require('./package.json') /** * Env * Get npm lifecycle event to identify the environment */ -var ENV = process.env.npm_lifecycle_event; +var ENV = process.env.npm_lifecycle_event -var config = { +var config = { entry: './example/todo/main.js', output: { // path: __dirname, @@ -21,9 +21,9 @@ var config = { test: /\.js$/, query: { presets: 'es2015', - plugins : [ - "transform-es3-property-literals", - "transform-es3-member-expression-literals" + plugins: [ + 'transform-es3-property-literals', + 'transform-es3-member-expression-literals' ] } } @@ -36,12 +36,12 @@ var config = { stats: { // Nice colored output colors: true - }, + } // Create Sourcemaps for the bundle // devtool: 'source-map', -}; +} -if(ENV === 'build'||ENV === 'build-min'){ +if (ENV === 'build' || ENV === 'build-min') { config = { entry: { omi: './src/index.js', @@ -52,10 +52,10 @@ if(ENV === 'build'||ENV === 'build-min'){ output: { // path: __dirname, path: 'dist/', - library:'Omi', + library: 'Omi', libraryTarget: 'umd', - filename: '[name].js' - //umdNamedDefine: true + filename: '[name].js' + // umdNamedDefine: true }, module: { loaders: [ @@ -64,54 +64,53 @@ if(ENV === 'build'||ENV === 'build-min'){ test: path.join(__dirname, 'src'), query: { presets: 'es2015', - plugins : [ - "transform-es3-property-literals", - "transform-es3-member-expression-literals" + plugins: [ + 'transform-es3-property-literals', + 'transform-es3-member-expression-literals' ] - }, + } } ] }, plugins: [ // Avoid publishing files when compilation fails - new webpack.BannerPlugin(" Omi v"+packageJSON.version+" By dntzhang \r\n Github: https://github.com/AlloyTeam/omi\r\n MIT Licensed."), + new webpack.BannerPlugin(' Omi v' + packageJSON.version + ' By dntzhang \r\n Github: https://github.com/AlloyTeam/omi\r\n MIT Licensed.'), new webpack.NoErrorsPlugin() ], stats: { // Nice colored output colors: true - }, + } // Create Sourcemaps for the bundle - // devtool: 'source-map', - }; + // devtool: 'source-map', + } - if(ENV === 'build-min'){ + if (ENV === 'build-min') { config.plugins.push(new webpack.optimize.UglifyJsPlugin({ compress: { warnings: false, - screw_ie8 : false + screw_ie8: false }, mangle: { screw_ie8: false }, output: { screw_ie8: false } - })); + })) config.entry = { 'omi.min': './src/index.js', 'omi.lite.min': './src/index.lite.js', 'omi.mustache.min': './src/index.mustache.js', 'omi.art.min': './src/index.art.js' - }; + } } -}else if(ENV==='todomvc'){ - config.entry = './' + ENV + '/js/main.js'; - config.output.path = './' + ENV + '/'; -}else{ - config.entry = './example/' + ENV + '/main.js'; - config.output.path = './example/' + ENV + '/'; +} else if (ENV === 'todomvc') { + config.entry = './' + ENV + '/js/main.js' + config.output.path = './' + ENV + '/' +} else { + config.entry = './example/' + ENV + '/main.js' + config.output.path = './example/' + ENV + '/' } +// console.log(ENV); -//console.log(ENV); - -module.exports = config; +module.exports = config From fb6cac062d5440d7dc00f3408a05becca0da85ef Mon Sep 17 00:00:00 2001 From: OuYancey Date: Wed, 2 Aug 2017 21:12:40 +0800 Subject: [PATCH 2/3] add more eslint rules --- .eslintrc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.eslintrc b/.eslintrc index 9eca2ed22..20854e54a 100644 --- a/.eslintrc +++ b/.eslintrc @@ -1,6 +1,10 @@ { "extends": "standard", "rules": { - "indent": ["error", 4] + // special alloyteam code style + // @see: http://alloyteam.github.io/CodeGuide/#js-indentation + "indent": ["error", 4], + // @see: http://alloyteam.github.io/CodeGuide/#js-space + "space-before-function-paren": ["error", "never"] } } \ No newline at end of file From 14b49b7b35580dfd3154d56415c877a804511842 Mon Sep 17 00:00:00 2001 From: OuYancey Date: Wed, 2 Aug 2017 21:13:02 +0800 Subject: [PATCH 3/3] lint --fix src/component.js --- src/component.js | 324 +++++++++++++++++++++++------------------------ 1 file changed, 159 insertions(+), 165 deletions(-) diff --git a/src/component.js b/src/component.js index 07502a2bf..c115745c0 100644 --- a/src/component.js +++ b/src/component.js @@ -13,7 +13,7 @@ class Component { selfDataFirst: false, domDiffDisabled: false, scopedSelfCSS: false - },option) + }, option) this._omi_scopedSelfCSS = componentOption.scopedSelfCSS this._omi_preventSelfUpdate = componentOption.preventSelfUpdate this._omi_domDiffDisabled = componentOption.domDiffDisabled @@ -31,12 +31,11 @@ class Component { Omi.instances[this.id] = this this.selfDataFirst = componentOption.selfDataFirst - this._omi_scoped_attr = Omi.STYLESCOPEDPREFIX + this.id - //this.BODY_ELEMENT = document.createElement('body') + this._omi_scoped_attr = Omi.STYLESCOPEDPREFIX + this.id + // this.BODY_ELEMENT = document.createElement('body') this._preCSS = null this._omiGroupDataCounter = {} - this._omi_installedHandlers = null - + this._omi_installedHandlers = null } install() { @@ -45,28 +44,28 @@ class Component { installed() { } - onInstalled(handler){ - if(!this._omi_installedHandlers){ + onInstalled(handler) { + if (!this._omi_installedHandlers) { this._omi_installedHandlers = [] } this._omi_installedHandlers.push(handler) } - _execInstalledHandlers(){ - this._omi_installedHandlers&&this._omi_installedHandlers.forEach((handler)=>{ + _execInstalledHandlers() { + this._omi_installedHandlers && this._omi_installedHandlers.forEach((handler) => { handler() }) } - uninstall(){ + uninstall() { } - afterUpdate(){ + afterUpdate() { } - beforeUpdate(){ + beforeUpdate() { } @@ -78,14 +77,14 @@ class Component { } - beforeRender(){ + beforeRender() { } useStore(store) { this.$$store = store let isInclude = false - store.instances.forEach(instance=> { + store.instances.forEach(instance => { if (instance.id === this.id) { isInclude = true } @@ -95,23 +94,23 @@ class Component { } } - updateSelf(){ + updateSelf() { this.beforeUpdate() if (this.renderTo) { this._render(false, true) } else { - if(this._omi_preventSelfUpdate) return; + if (this._omi_preventSelfUpdate) return // update child node - if(this._omi_removed ) { - let hdNode = this._createHiddenNode() - this.node.parentNode.replaceChild(hdNode,this.node) + if (this._omi_removed) { + let hdNode = this._createHiddenNode() + this.node.parentNode.replaceChild(hdNode, this.node) this.node = hdNode - }else{ + } else { morphdom(this.node, scopedEvent(this._childRender(this._omiChildStr, true), this.id), { - ignoreAttr:this._getIgnoreAttr() + ignoreAttr: this._getIgnoreAttr() }) - this.node = document.querySelector("[" + this._omi_scoped_attr + "]") + this.node = document.querySelector('[' + this._omi_scoped_attr + ']') this._queryElements(this) this._fixForm() } @@ -126,42 +125,41 @@ class Component { if (this.renderTo) { this._render(false, false, true) } else { - if(this._omi_preventSelfUpdate) return; + if (this._omi_preventSelfUpdate) return // update child node - if(this._omi_removed ) { - let hdNode = this._createHiddenNode() - this.node.parentNode.replaceChild(hdNode,this.node) + if (this._omi_removed) { + let hdNode = this._createHiddenNode() + this.node.parentNode.replaceChild(hdNode, this.node) this.node = hdNode - }else{ - if(this._omi_domDiffDisabled){ - this.node.parentNode.replaceChild(morphdom.toElement(scopedEvent(this._childRender(this._omiChildStr, false, true), this.id)),this.node) - }else { - morphdom(this.node, scopedEvent(this._childRender(this._omiChildStr,false, true), this.id)) + } else { + if (this._omi_domDiffDisabled) { + this.node.parentNode.replaceChild(morphdom.toElement(scopedEvent(this._childRender(this._omiChildStr, false, true), this.id)), this.node) + } else { + morphdom(this.node, scopedEvent(this._childRender(this._omiChildStr, false, true), this.id)) } - this.node = document.querySelector("[" + this._omi_scoped_attr + "]") + this.node = document.querySelector('[' + this._omi_scoped_attr + ']') this._queryElements(this) - this._fixForm() - + this._fixForm() } } - //exec new element installed + // exec new element installed this._childrenInstalledAfterUpdate(this) this._childrenAfterUpdate(this) this.afterUpdate() } - _childrenBeforeUpdate(root){ - root.children.forEach((child)=>{ + _childrenBeforeUpdate(root) { + root.children.forEach((child) => { child.beforeUpdate() child._omiGroupDataCounter = {} this._childrenBeforeUpdate(child) }) } - _childrenAfterUpdate(root){ - root.children.forEach((child)=>{ + _childrenAfterUpdate(root) { + root.children.forEach((child) => { this._childrenAfterUpdate(child) child.afterUpdate() }) @@ -174,58 +172,58 @@ class Component { } } - removeChild(indexOrChild){ + removeChild(indexOrChild) { let child = indexOrChild - if(typeof indexOrChild === 'number'){ + if (typeof indexOrChild === 'number') { child = this.children[indexOrChild] } child.remove() } - restoreChild(indexOrChild){ + restoreChild(indexOrChild) { let child = indexOrChild - if(typeof indexOrChild === 'number'){ + if (typeof indexOrChild === 'number') { child = this.children[indexOrChild] } child.restore() } - remove (){ - this._omi_removed = true + remove() { + this._omi_removed = true this.update() this.uninstall() } - restore(){ - this._omi_removed = false + restore() { + this._omi_removed = false this.update() this.installed() this._execInstalledHandlers() } _render(isFirst, isSelf, fromUpdate) { - if(this._omi_removed ){ + if (this._omi_removed) { let node = this._createHiddenNode() - if(!isFirst){ + if (!isFirst) { this.node.parentNode.replaceChild(node, this.node) this.node = node - }else if(this.renderTo){ + } else if (this.renderTo) { this.renderTo.appendChild(node) } return } - if(this._omi_autoStoreToData){ - if(!this._omi_ignoreStoreData) { + if (this._omi_autoStoreToData) { + if (!this._omi_ignoreStoreData) { this.data = this.$store.data } } this.beforeRender() this._generateHTMLCSS() - if(!isSelf) { + if (!isSelf) { this._extractChildren(this, fromUpdate) - }else { + } else { this._extractChildrenString(this, fromUpdate) } @@ -233,7 +231,7 @@ class Component { this.HTML = this.HTML.replace(item._omiChildStr, isSelf ? item.node.outerHTML : item.HTML) }) - this.HTML = scopedEvent(this.HTML, this.id) + this.HTML = scopedEvent(this.HTML, this.id) if (isFirst) { if (this.renderTo) { if (this._omi_increment) { @@ -243,10 +241,10 @@ class Component { } } } else { - if (this.HTML !== "") { - if(this._omi_domDiffDisabled){ + if (this.HTML !== '') { + if (this._omi_domDiffDisabled) { this.renderTo.innerHTML = this.HTML - }else { + } else { morphdom(this.node, this.HTML, isSelf ? { ignoreAttr: this._getIgnoreAttr() } : null) @@ -255,17 +253,17 @@ class Component { morphdom(this.node, this._createHiddenNode()) } } - //get node prop from parent node + // get node prop from parent node if (this.renderTo) { - this.node = document.querySelector("[" + this._omi_scoped_attr + "]") + this.node = document.querySelector('[' + this._omi_scoped_attr + ']') this._queryElements(this) this._fixForm() } } - _getIgnoreAttr(){ + _getIgnoreAttr() { var arr = [] - this.children.forEach( child => { + this.children.forEach(child => { arr.push(child._omi_scoped_attr) }) return arr @@ -276,7 +274,7 @@ class Component { this.HTML = '' return this.HTML } - //childStr = childStr.replace("", ">") + // childStr = childStr.replace("", ">") this._mergeData(childStr) if (this.parent._omi_autoStoreToData) { this._omi_autoStoreToData = true @@ -300,17 +298,17 @@ class Component { } _fixSlot(shareAttr) { - if(!this._omi_slotContent) return + if (!this._omi_slotContent) return this._omi_slotContent = this._scopedAttr(this._omi_slotContent, this._omi_scoped_attr, shareAttr) let nodes = morphdom.toElements(this._omi_slotContent) let slotMatch = this.HTML.match(//g) - if(nodes.length === 1 && slotMatch && slotMatch.length===1) { + if (nodes.length === 1 && slotMatch && slotMatch.length === 1) { this.HTML = this.HTML.replace(//, this._omi_slotContent) - }else{ - nodes.sort(function(a,b){ - return parseInt(a.getAttribute('slot-index'))- parseInt(b.getAttribute('slot-index')) + } else { + nodes.sort(function(a, b) { + return parseInt(a.getAttribute('slot-index')) - parseInt(b.getAttribute('slot-index')) }) - nodes.forEach((node)=> { + nodes.forEach((node) => { this.HTML = this.HTML.replace(//, node.outerHTML) }) } @@ -319,51 +317,51 @@ class Component { _queryElements(current) { current._mixRefs() current._execPlugins() - current.children.forEach((item)=>{ - item.node = current.node.querySelector("[" + Omi.STYLESCOPEDPREFIX + item.id + "]") - //recursion get node prop from parent node + current.children.forEach((item) => { + item.node = current.node.querySelector('[' + Omi.STYLESCOPEDPREFIX + item.id + ']') + // recursion get node prop from parent node item.node && current._queryElements(item) }) } _mixRefs() { - let nodes = Omi.$$('*[ref]',this.node) + let nodes = Omi.$$('*[ref]', this.node) nodes.forEach(node => { - if(node.hasAttribute(this._omi_scoped_attr) ) { + if (node.hasAttribute(this._omi_scoped_attr)) { this.refs[node.getAttribute('ref')] = node } }) let attr = this.node.getAttribute('ref') - if(attr) { + if (attr) { this.refs[attr] = this.node } } - _execPlugins(){ + _execPlugins() { Object.keys(Omi.plugins).forEach(item => { - let nodes = Omi.$$('*['+item+']',this.node) + let nodes = Omi.$$('*[' + item + ']', this.node) nodes.forEach(node => { - if(node.hasAttribute(this._omi_scoped_attr) ) { - Omi.plugins[item](node,this) + if (node.hasAttribute(this._omi_scoped_attr)) { + Omi.plugins[item](node, this) } }) - if(this.node.hasAttribute(item)) { + if (this.node.hasAttribute(item)) { Omi.plugins[item](this.node, this) } }) } - _childrenInstalled(root){ - root.children.forEach((child)=>{ + _childrenInstalled(root) { + root.children.forEach((child) => { this._childrenInstalled(child) child.installed() child._execInstalledHandlers() }) } - _childrenInstalledAfterUpdate(root){ - root.children.forEach((child)=>{ - if(child._omi_needInstalled){ + _childrenInstalledAfterUpdate(root) { + root.children.forEach((child) => { + if (child._omi_needInstalled) { child._omi_needInstalled = false this._childrenInstalled(child) child.installed() @@ -372,9 +370,8 @@ class Component { }) } - _fixForm (){ - - Omi.$$('input',this.node).forEach(element =>{ + _fixForm() { + Omi.$$('input', this.node).forEach(element => { let type = element.type.toLowerCase() if (element.getAttribute('value') === '') { element.value = '' @@ -388,63 +385,63 @@ class Component { } }) - Omi.$$('textarea',this.node).forEach(textarea =>{ + Omi.$$('textarea', this.node).forEach(textarea => { textarea.value = textarea.getAttribute('value') }) - Omi.$$('select',this.node).forEach(select =>{ + Omi.$$('select', this.node).forEach(select => { let value = select.getAttribute('value') if (value) { - Omi.$$('option',select).forEach(option =>{ - if(value === option.getAttribute('value')) { - option.selected = true + Omi.$$('option', select).forEach(option => { + if (value === option.getAttribute('value')) { + option.selected = true } }) - }else { + } else { let firstOption = Omi.$$('option', select)[0] - firstOption && (firstOption.selected = true) + firstOption && (firstOption.selected = true) } }) } _replaceTags(array, html, updateSelf, fromUpdate) { if (Omi.customTags.length === 0) return - const str = array.join("|") - const reg = new RegExp('<(' + str + '+)((?:\\s+[a-zA-Z_:][-a-zA-Z0-9_:.]*(?:\\s*=\\s*(?:(?:"[^"]*")|(?:\'[^\']*\')|[^>\\s]+))?)*)\\s*((\\/>)|>(([\\s\\S]*?)<\\/\\1>))', 'g'); + const str = array.join('|') + const reg = new RegExp('<(' + str + '+)((?:\\s+[a-zA-Z_:][-a-zA-Z0-9_:.]*(?:\\s*=\\s*(?:(?:"[^"]*")|(?:\'[^\']*\')|[^>\\s]+))?)*)\\s*((\\/>)|>(([\\s\\S]*?)<\\/\\1>))', 'g') let index = 0 - return html.replace(reg, (m,a,b,c,d,e,f) => { - if(updateSelf) { + return html.replace(reg, (m, a, b, c, d, e, f) => { + if (updateSelf) { let cmi = this.children[index] if (cmi && cmi.___omi_constructor_name === a) { cmi._omiChildStr = m } - }else{ + } else { this._initComponentByString(a, m, f, index++, this, fromUpdate) } }) } - _createHiddenNode(){ - let hdNode = document.createElement("input") - hdNode.setAttribute("type","hidden") - hdNode.setAttribute( this._omi_scoped_attr, '') + _createHiddenNode() { + let hdNode = document.createElement('input') + hdNode.setAttribute('type', 'hidden') + hdNode.setAttribute(this._omi_scoped_attr, '') return hdNode } _mergeData(childStr) { - if(this.selfDataFirst){ - this.data = Object.assign({},this._getDataset(childStr),this.data) - }else{ - this.data = Object.assign({},this.data, this._getDataset(childStr)) + if (this.selfDataFirst) { + this.data = Object.assign({}, this._getDataset(childStr), this.data) + } else { + this.data = Object.assign({}, this.data, this._getDataset(childStr)) } } _generateHTMLCSS() { - this.CSS = (this.style()|| '').replace(/<\/?style>/g,'') - let shareAttr = this.___omi_constructor_name?(Omi.STYLESCOPEDPREFIX + this.___omi_constructor_name.toLowerCase()):this._omi_scoped_attr + this.CSS = (this.style() || '').replace(/<\/?style>/g, '') + let shareAttr = this.___omi_constructor_name ? (Omi.STYLESCOPEDPREFIX + this.___omi_constructor_name.toLowerCase()) : this._omi_scoped_attr if (this.CSS) { - if(this._omi_scopedSelfCSS||!Omi.style[shareAttr]) { - this.CSS = style.scoper(this.CSS, this._omi_scopedSelfCSS ? "[" + this._omi_scoped_attr + "]" : "[" + shareAttr + "]") + if (this._omi_scopedSelfCSS || !Omi.style[shareAttr]) { + this.CSS = style.scoper(this.CSS, this._omi_scopedSelfCSS ? '[' + this._omi_scoped_attr + ']' : '[' + shareAttr + ']') Omi.style[shareAttr] = this.CSS if (this.CSS !== this._preCSS && !this._omi_server_rendering) { style.addStyle(this.CSS, this.id) @@ -453,9 +450,9 @@ class Component { } } let tpl = this.render() - this.HTML = this._scopedAttr(Omi.template(tpl ? tpl : "", this.data), this._omi_scoped_attr, shareAttr).trim() + this.HTML = this._scopedAttr(Omi.template(tpl || '', this.data), this._omi_scoped_attr, shareAttr).trim() if (this._omi_server_rendering) { - this.HTML = '\r\n\r\n'+this.HTML + this.HTML = '\r\n\r\n' + this.HTML this.HTML += '\r\n\r\n' } @@ -463,12 +460,12 @@ class Component { } _scopedAttr(html, id, shareAtrr) { - return html.replace(/<[^/]([A-Za-z]*)[^>]*>/g, (m) => { - let str = m.split(" ")[0].replace(">", "") - if(this._omi_scopedSelfCSS||!this.___omi_constructor_name){ - return m.replace(str, str + " " + id) - }else{ - return m.replace(str, str + " " + id+" "+ shareAtrr) + return html.replace(/<[^/]([A-Za-z]*)[^>]*>/g, (m) => { + let str = m.split(' ')[0].replace('>', '') + if (this._omi_scopedSelfCSS || !this.___omi_constructor_name) { + return m.replace(str, str + ' ' + id) + } else { + return m.replace(str, str + ' ' + id + ' ' + shareAtrr) } }) } @@ -476,7 +473,7 @@ class Component { _getDataset(childStr) { let json = html2json(childStr) let attr = json.child[0].attr - let baseData = { } + let baseData = {} Object.keys(attr).forEach(key => { const value = attr[key] if (key.indexOf('on') === 0) { @@ -484,57 +481,55 @@ class Component { if (handler) { baseData[this._capitalize(key)] = handler.bind(this.parent) } - }else if(key.indexOf('data-') === 0){ + } else if (key.indexOf('data-') === 0) { this._dataset[this._capitalize(key.replace('data-', ''))] = value - }else if(key.indexOf(':data-') === 0) { + } else if (key.indexOf(':data-') === 0) { this._dataset[this._capitalize(key.replace(':data-', ''))] = eval('(' + value + ')') - }else if(key.indexOf('::data-') === 0){ - this._dataset[this._capitalize(key.replace('::data-', ''))] = this._extractPropertyFromString(value,this.parent) - }else if(key === 'data'){ - this._dataset = this._extractPropertyFromString(value,this.parent) - }else if(key === ':data'){ + } else if (key.indexOf('::data-') === 0) { + this._dataset[this._capitalize(key.replace('::data-', ''))] = this._extractPropertyFromString(value, this.parent) + } else if (key === 'data') { + this._dataset = this._extractPropertyFromString(value, this.parent) + } else if (key === ':data') { this._dataset = eval('(' + value + ')') - }else if (key === 'group-data') { - this._dataset = this._extractPropertyFromString(value,this.parent)[this._omi_groupDataIndex] + } else if (key === 'group-data') { + this._dataset = this._extractPropertyFromString(value, this.parent)[this._omi_groupDataIndex] } }) - return Object.assign(baseData,this._dataset) + return Object.assign(baseData, this._dataset) } - _capitalize (str){ + _capitalize(str) { str = str.toLowerCase() - str = str.replace(/\b\w+\b/g, function (word) { + str = str.replace(/\b\w+\b/g, function(word) { return word.substring(0, 1).toUpperCase() + word.substring(1) - }).replace(/-/g,'') + }).replace(/-/g, '') return str.substring(0, 1).toLowerCase() + str.substring(1) } - _extractPropertyFromString(str, instance){ - let arr = str.replace(/['|"|\]]/g,'' ).replace(/\[/g,'.').split('.') + _extractPropertyFromString(str, instance) { + let arr = str.replace(/['|"|\]]/g, '').replace(/\[/g, '.').split('.') let current = instance arr.forEach(prop => { current = current[prop] }) arr = null - return current - + return current } - _extractChildrenString(child, fromUpdate){ - this._replaceTags(Omi.customTags, child.HTML, true, fromUpdate) - + _extractChildrenString(child, fromUpdate) { + this._replaceTags(Omi.customTags, child.HTML, true, fromUpdate) } - _extractChildren(child, fromUpdate){ + _extractChildren(child, fromUpdate) { this._replaceTags(Omi.customTags, child.HTML, false, fromUpdate) } - _initComponentByString(name, childStr, slotContent, i, child, fromUpdate){ + _initComponentByString(name, childStr, slotContent, i, child, fromUpdate) { let json = html2json(childStr) let attr = json.child[0].attr let cmi = this.children[i] - //if not first time to invoke _extractChildren method + // if not first time to invoke _extractChildren method if (cmi && cmi.___omi_constructor_name === name) { cmi._omiChildStr = childStr cmi._omi_slotContent = slotContent @@ -567,45 +562,44 @@ class Component { if (handler) { baseData[this._capitalize(key)] = handler.bind(child) } - } else if (key === 'omi-id'){ + } else if (key === 'omi-id') { omiID = value - }else if (key === 'name'){ + } else if (key === 'name') { instanceName = value - }else if (key === 'group-data') { + } else if (key === 'group-data') { if (child._omiGroupDataCounter.hasOwnProperty(value)) { child._omiGroupDataCounter[value]++ } else { child._omiGroupDataCounter[value] = 0 } groupDataIndex = child._omiGroupDataCounter[value] - dataset = this._extractPropertyFromString(value,child)[groupDataIndex] - - } else if(key.indexOf('data-') === 0){ + dataset = this._extractPropertyFromString(value, child)[groupDataIndex] + } else if (key.indexOf('data-') === 0) { dataset[this._capitalize(key.replace('data-', ''))] = value - }else if(key.indexOf(':data-') === 0) { + } else if (key.indexOf(':data-') === 0) { dataset[this._capitalize(key.replace(':data-', ''))] = eval('(' + value + ')') - }else if(key.indexOf('::data-') === 0){ - dataset[this._capitalize(key.replace('::data-', ''))] = this._extractPropertyFromString(value,child) - }else if(key === 'data'){ - dataset = this._extractPropertyFromString(value,child) - }else if(key === ':data'){ + } else if (key.indexOf('::data-') === 0) { + dataset[this._capitalize(key.replace('::data-', ''))] = this._extractPropertyFromString(value, child) + } else if (key === 'data') { + dataset = this._extractPropertyFromString(value, child) + } else if (key === ':data') { dataset = eval('(' + value + ')') - }else if(key === 'preventSelfUpdate'|| key === 'psu'|| key === 'preventselfupdate'){ + } else if (key === 'preventSelfUpdate' || key === 'psu' || key === 'preventselfupdate') { _omi_option.preventSelfUpdate = true - }else if(key === 'selfDataFirst'|| key === 'sdf'|| key === 'selfdatafirst'){ + } else if (key === 'selfDataFirst' || key === 'sdf' || key === 'selfdatafirst') { _omi_option.selfDataFirst = true - }else if(key === 'domDiffDisabled'|| key === 'ddd'|| key === 'domdiffdisabled'){ + } else if (key === 'domDiffDisabled' || key === 'ddd' || key === 'domdiffdisabled') { _omi_option.domDiffDisabled = true - }else if(key === 'ignoreStoreData'|| key === 'isd'|| key === 'ignorestoredata'){ + } else if (key === 'ignoreStoreData' || key === 'isd' || key === 'ignorestoredata') { _omi_option.ignoreStoreData = true - }else if(key === 'scopedSelfCSS'|| key === 'ssc'|| key === 'scopedselfcss'){ + } else if (key === 'scopedSelfCSS' || key === 'ssc' || key === 'scopedselfcss') { _omi_option.scopedSelfCSS = true } }) let ChildClass = Omi.getClassFromString(name) - if (!ChildClass) throw "Can't find Class called [" + name+"]" - let sub_child = new ChildClass( Object.assign(baseData,dataset ),_omi_option) + if (!ChildClass) throw "Can't find Class called [" + name + ']' + let sub_child = new ChildClass(Object.assign(baseData, dataset), _omi_option) sub_child._omi_groupDataIndex = groupDataIndex sub_child._omiChildStr = childStr sub_child._omi_slotContent = slotContent @@ -626,11 +620,11 @@ class Component { sub_child._childRender(childStr) - if(fromUpdate){ + if (fromUpdate) { sub_child._omi_needInstalled = true } } } } -export default Component \ No newline at end of file +export default Component