1
0
mirror of https://github.com/sahadev/vue-component-creater-ui.git synced 2025-06-07 21:54:05 +08:00

update: check vant

This commit is contained in:
shangbin 2021-12-14 16:01:23 +08:00
parent 6b848ea950
commit 8e3c577302
9 changed files with 139 additions and 142 deletions

View File

@ -394,6 +394,7 @@ export default {
z-index: 3; z-index: 3;
top: 0; top: 0;
background: white; background: white;
overflow: scroll;
} }
#mountedEle { #mountedEle {

View File

@ -39,6 +39,7 @@ const defaultOptions = {
attrValueProcessor: function (a) { attrValueProcessor: function (a) {
return a; return a;
}, },
singleTags: [],
attributeProtectArray: [] // 哪些属性的值为''但需要渲染出来默认如果value为''就不生成key=value只生成key attributeProtectArray: [] // 哪些属性的值为''但需要渲染出来默认如果value为''就不生成key=value只生成key
}; };
@ -54,6 +55,7 @@ const props = [
'supressEmptyNode', 'supressEmptyNode',
'tagValueProcessor', 'tagValueProcessor',
'attrValueProcessor', 'attrValueProcessor',
'singleTags',
'attributeProtectArray' 'attributeProtectArray'
]; ];
@ -116,22 +118,22 @@ Parser.prototype.j2x = function (jObj, level) {
val += this.indentate(level) + '<' + key + '/' + this.tagEndChar; val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;
} else if (jObj[key] instanceof Date) { } else if (jObj[key] instanceof Date) {
val += this.buildTextNode(jObj[key], key, '', level); val += this.buildTextNode(jObj[key], key, '', level);
} else if (key === '__children'){ // 生成子节点 } else if (key === '__children') { // 生成子节点
const item = jObj[key]; const item = jObj[key];
if(item instanceof Array){ if (item instanceof Array) {
item.forEach(i =>{ item.forEach(i => {
const result = this.j2x(i, level + 1); const result = this.j2x(i, level + 1);
val += result.val; val += result.val;
}); });
} else } else
if (typeof item === 'object') { if (typeof item === 'object') {
console.info(`不应该出现的意外`); console.info(`不应该出现的意外`);
} else { } else {
val += this.buildTextNode(item, key, '', level); val += this.buildTextNode(item, key, '', level);
} }
} }
else if (typeof jObj[key] !== 'object') { else if (typeof jObj[key] !== 'object') {
//premitive type //premitive type
const attr = this.isAttribute(key); const attr = this.isAttribute(key);
@ -144,7 +146,7 @@ Parser.prototype.j2x = function (jObj, level) {
if (attr) { if (attr) {
if (typeof jObj[key] === "boolean" && jObj[key]) { if (typeof jObj[key] === "boolean" && jObj[key]) {
attrStr += ` ${key} `; attrStr += ` ${key} `;
} else if(jObj[key] || this.options.attributeProtectArray.includes(key)){ } else if (jObj[key] || this.options.attributeProtectArray.includes(key)) {
attrStr += ' ' + key + '="' + this.options.attrValueProcessor('' + jObj[key]) + '"'; attrStr += ' ' + key + '="' + this.options.attrValueProcessor('' + jObj[key]) + '"';
} else { } else {
attrStr += ' ' + key; attrStr += ' ' + key;
@ -167,8 +169,8 @@ Parser.prototype.j2x = function (jObj, level) {
} }
} }
} }
else if (Array.isArray(jObj[key])) { else if (Array.isArray(jObj[key])) {
//repeated nodes //repeated nodes
if (this.isCDATA(key)) { if (this.isCDATA(key)) {
@ -234,7 +236,7 @@ function replaceCDATAarr(str, cdata) {
function buildObjectNode(val, key, attrStr, level) { function buildObjectNode(val, key, attrStr, level) {
if (attrStr && !val.includes('<')) { if (attrStr && !val.includes('<')) {
if (key === "img" || key === "input") { if (key === "img" || key === "a-icon" || key === "input" || (this.options.singleTags && this.options.singleTags.includes(key))) {
return (this.indentate(level) + '<' + key + attrStr + '/>'); return (this.indentate(level) + '<' + key + attrStr + '/>');
} }

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,55 +1,44 @@
<template lc_id="mUQG+E4AcV"> <template lc_id="mUQG+E4AcV">
<div lc_id="AacFAo8xlp"> <div lc_id="AacFAo8xlp">
<div lc_id="H8AE6/LSfT"> <div lc_id="H8AE6/LSfT">
<div class="demonstration-vant" lc_id="BW6xbV1Jkz">Button 按钮</div> <div class="demonstration-vant" lc_id="BW6xbV1Jkz">Button 按钮</div>
<div id="vant-button" lc_id="0xAc0+UTl0"> <div id="vant-button" lc_id="0xAc0+UTl0">
<van-button lc-mark type="primary" lc_id="O1Kc1IjqyA">主要按钮</van-button> <van-button lc-mark type="primary" lc_id="O1Kc1IjqyA">主要按钮</van-button>
<van-button lc-mark type="success" lc_id="LWUrTRjiN3">成功按钮</van-button> <van-button lc-mark type="success" lc_id="LWUrTRjiN3">成功按钮</van-button>
<van-button lc-mark type="default" lc_id="Lor6xJLyXO">默认按钮</van-button> <van-button lc-mark type="default" lc_id="Lor6xJLyXO">默认按钮</van-button>
<van-button lc-mark type="warning" lc_id="B2mwHpjnn4">警告按钮</van-button> <van-button lc-mark type="warning" lc_id="B2mwHpjnn4">警告按钮</van-button>
<van-button lc-mark type="danger" lc_id="g8aJMV07tv">危险按钮</van-button> <van-button lc-mark type="danger" lc_id="g8aJMV07tv">危险按钮</van-button>
<van-button lc-mark plain type="primary" lc_id="B6Z0HCAfII">朴素按钮</van-button> <van-button lc-mark plain type="primary" lc_id="B6Z0HCAfII">朴素按钮</van-button>
<van-button lc-mark plain type="primary" lc_id="Kl0A4kmfxN">朴素按钮</van-button> <van-button lc-mark square type="primary" lc_id="S7BYt/eLuR">方形按钮</van-button>
<van-button lc-mark loading type="primary" lc_id="H7ASlo2i6q"> <van-button lc-mark round type="primary" lc_id="xqEMwr1sRA">圆形按钮</van-button>
<van-button lc-mark loading type="primary" loading-type="spinner" lc_id="DYCEFZzcgc"> <van-button lc-mark icon="plus" type="primary" lc_id="XG3GYBBrEU">按钮</van-button>
<van-button lc-mark loading type="primary" loading-text="加载中..." lc_id="SS7BJIzMsg"> <van-button lc-mark icon="https://img.yzcdn.cn/vant/user-active.png" type="primary" lc_id="X//pnSGqLF">按钮</van-button>
<van-button lc-mark square type="primary" lc_id="S7BYt/eLuR">方形按钮</van-button> <van-button lc-mark type="primary" size="large" lc_id="pwjoF9kQPG">大号按钮</van-button>
<van-button lc-mark round type="primary" lc_id="xqEMwr1sRA">圆形按钮</van-button> <van-button lc-mark type="primary" size="normal" lc_id="1ShXXx6uM0">普通按钮</van-button>
<van-button lc-mark icon="plus" type="primary" lc_id="7ja7xPbWmm"> <van-button lc-mark type="primary" size="small" lc_id="NJoWdzL3ps">小型按钮</van-button>
<van-button lc-mark icon="plus" type="primary" lc_id="XG3GYBBrEU">按钮</van-button> <van-button lc-mark type="primary" size="mini" lc_id="hOCsi5Nd7f">迷你按钮</van-button>
<van-button lc-mark icon="https://img.yzcdn.cn/vant/user-active.png" type="primary" lc_id="X//pnSGqLF"> <van-button lc-mark type="primary" block lc_id="0MRQ5LCYcF">块级元素</van-button>
按钮</van-button> <van-button lc-mark color="#7232dd" lc_id="nrrWnpVDmN">单色按钮</van-button>
<van-button lc-mark type="primary" size="large" lc_id="pwjoF9kQPG">大号按钮</van-button> <van-button lc-mark color="#7232dd" plain lc_id="l0tFmVZGj9">单色按钮</van-button>
<van-button lc-mark type="primary" size="normal" lc_id="1ShXXx6uM0">普通按钮</van-button> <van-button lc-mark color="linear-gradient(to right, #ff6034, #ee0a24)" lc_id="RXwG5PrfLY">渐变色按钮</van-button>
<van-button lc-mark type="primary" size="small" lc_id="NJoWdzL3ps">小型按钮</van-button> </div>
<van-button lc-mark type="primary" size="mini" lc_id="hOCsi5Nd7f">迷你按钮</van-button> </div>
<van-button lc-mark type="primary" block lc_id="0MRQ5LCYcF">块级元素</van-button> <div lc_id="an/3DkuLE6">
<van-button lc-mark color="#7232dd" lc_id="nrrWnpVDmN">单色按钮</van-button> <div class="demonstration-vant" lc_id="w8jEqp6M5d">Cell 单元格</div>
<van-button lc-mark color="#7232dd" plain lc_id="l0tFmVZGj9">单色按钮</van-button> <van-cell-group lc-mark lc_id="YIna8H61Ze">
<van-button lc-mark color="linear-gradient(to right, #ff6034, #ee0a24)" lc_id="RXwG5PrfLY">渐变色按钮 <van-cell title="单元格" value="内容" lc_id="TFcKdvoBUi">
</van-button> <van-cell title="单元格" value="内容" label="描述信息" lc_id="wCy+AFO6oA"></van-cell>
</van-button> </van-cell>
</van-button> </van-cell-group>
</van-button> <br>
</van-button> <van-cell-group inset lc-mark lc_id="GDUu8grqyq">
<van-cell title="单元格" value="内容" lc_id="R/yvDgWEzu">
<van-cell title="单元格" value="内容" label="描述信息" lc_id="nH8Z1dpWkB"></van-cell>
</van-cell>
</van-cell-group>
</div>
</div> </div>
</div> </template>
<div lc_id="an/3DkuLE6">
<div class="demonstration-vant" lc_id="w8jEqp6M5d">Cell 单元格</div>
<van-cell-group lc-mark lc_id="YIna8H61Ze">
<van-cell title="单元格" value="内容" lc_id="TFcKdvoBUi">
<van-cell title="单元格" value="内容" label="描述信息" lc_id="wCy+AFO6oA"></van-cell>
</van-cell>
</van-cell-group>
<br>
<van-cell-group inset lc-mark lc_id="GDUu8grqyq">
<van-cell title="单元格" value="内容" lc_id="R/yvDgWEzu">
<van-cell title="单元格" value="内容" label="描述信息" lc_id="nH8Z1dpWkB"></van-cell>
</van-cell>
</van-cell-group>
</div>
</div>
</template>
<script> <script>
export default { export default {
data() { data() {
@ -57,12 +46,10 @@ export default {
}, },
methods: {}, methods: {},
}; </script> }; </script>
<style scoped> <style scoped>button + button {
button + button {
margin-top: 10px; margin-top: 10px;
} }
#vant-button > * { #vant-button > * {
margin: 0 5px 5px 0; margin: 0 5px 5px 0;
} }</style>
</style>

View File

@ -60,7 +60,7 @@
<div lc_id="mllWNtm7WD"> <div lc_id="mllWNtm7WD">
<div class="demonstration-vant" lc_id="XU1g37b7Bj">Skeleton 骨架屏</div> <div class="demonstration-vant" lc_id="XU1g37b7Bj">Skeleton 骨架屏</div>
<van-skeleton title :row="3" lc-mark lc_id="B9ypSupDLY"></van-skeleton> <van-skeleton title :row="3" lc-mark lc_id="B9ypSupDLY"></van-skeleton>
<br> <br lc_id="gJKqa1lhDD" />
<van-skeleton title avatar :row="3" lc-mark lc_id="LH6oqOei+U"></van-skeleton> <van-skeleton title avatar :row="3" lc-mark lc_id="LH6oqOei+U"></van-skeleton>
</div> </div>
<div lc_id="H2zy4AGqzd"> <div lc_id="H2zy4AGqzd">

View File

@ -1,65 +1,66 @@
<template lc_id="oV+qpNVI6k"> <template lc_id="oV+qpNVI6k">
<div lc_id="m5KY8rTxt1"> <div lc_id="m5KY8rTxt1">
<div lc_id="5CmAJnEb1P"> <div lc_id="5CmAJnEb1P">
<div class="demonstration-vant" lc_id="SM70eEXO+9">Field 输入框</div> <div class="demonstration-vant" lc_id="SM70eEXO+9">Field 输入框</div>
<div lc-mark style="padding: 10px;" lc_id="f/reOjq1IJ"> <div lc-mark style="padding: 10px;" lc_id="f/reOjq1IJ">
<van-field lc-mark v-model="text" label="文本" lc_id="DIxZNSoiax"></van-field> <van-field lc-mark v-model="text" label="文本" lc_id="DIxZNSoiax"></van-field>
<van-field lc-mark v-model="tel" type="tel" label="手机号" lc_id="mmGmLLyGW5"></van-field> <van-field lc-mark v-model="tel" type="tel" label="手机号" lc_id="mmGmLLyGW5"></van-field>
<van-field lc-mark v-model="digit" type="digit" label="整数" lc_id="T+vzBFNZhS"></van-field> <van-field lc-mark v-model="digit" type="digit" label="整数" lc_id="T+vzBFNZhS"></van-field>
<van-field lc-mark v-model="number" type="number" label="数字" lc_id="O36q2Fx7Xv"></van-field> <van-field lc-mark v-model="number" type="number" label="数字" lc_id="O36q2Fx7Xv"></van-field>
<van-field lc-mark v-model="password" type="password" label="密码" lc_id="dk6ah1vXDq"></van-field> <van-field lc-mark v-model="password" type="password" label="密码" lc_id="dk6ah1vXDq"></van-field>
</div>
</div>
<div lc_id="L5fPGRqjYZ">
<div class="demonstration-vant" lc_id="3qMdltHE4i">DatetimePicker 时间选择</div>
<van-datetime-picker v-model="currentDate" type="date" title="选择年月日" lc-mark :min-date="minDate" :max-date="maxDate" lc_id="14vPN9ntBV"></van-datetime-picker>
</div>
<div lc_id="ODgqdaL6ED">
<div class="demonstration-vant" lc_id="hrPSBFZ6Hh">Checkbox 复选框</div>
<van-checkbox-group lc-mark v-model="result" lc_id="F2p5QIbo3W">
<van-checkbox name="a" lc_id="90jCPURt8o">复选框 a</van-checkbox>
<van-checkbox lc-mark name="b" lc_id="bvtnBJfQnk">复选框 b</van-checkbox>
</van-checkbox-group>
</div>
<div lc_id="V9/vkUb/HX">
<div class="demonstration-vant" lc_id="hnZi6s2mpt">Checkbox 复选框(全选与反选)</div>
<div lc-mark lc_id="JHg6xi7Ws5">
<van-checkbox-group v-model="result" ref="checkboxGroup" lc_id="8EUt8S6cIj">
<van-checkbox name="a" lc_id="vAZDx+cKaQ">复选框 a</van-checkbox>
<van-checkbox name="b" lc_id="lNhFITM1W/">复选框 b</van-checkbox>
<van-checkbox lc-mark name="c" lc_id="BVLbIHoPpi">复选框 c</van-checkbox>
</van-checkbox-group>
<br>
<van-button type="primary" size="small" @click="checkAll" lc_id="azfVg1jydO">全选</van-button>
<van-button plain size="small" @click="toggleAll" lc_id="FxjbFUMiWD">反选</van-button>
</div>
</div>
<div lc_id="jl0/Xq6pS6">
<div class="demonstration-vant" lc_id="5GzBrVy4XX">Radio 单选框</div>
<div lc_id="TT2Onqet2I">
<van-radio-group lc-mark v-model="radio10" lc_id="Fq7xqCU/Ul">
<van-radio name="1" lc_id="eX5Wd5A8M+">单选框 1</van-radio>
<van-radio lc-mark name="2" lc_id="QN9H1HdL7S">单选框 2</van-radio>
</van-radio-group>
<br>
<van-radio-group lc-mark v-model="radio10" lc_id="p/WdWJotYb">
<van-cell-group lc_id="7SU7k9W/RI">
<van-cell title="单选框 1" clickable @click="radio10 = '1'" lc-mark lc_id="cu2BQ/D1Gt">
<template #right-icon lc_id="yLUfrpVFId">
<van-radio name="1" lc_id="9sKStrXAMF"></van-radio>
</template>
</van-cell>
<van-cell title="单选框 2" clickable @click="radio10 = '2'" lc_id="KnbWE2AKwX">
<template #right-icon lc_id="vSyCi55TWO">
<van-radio name="2" lc_id="gDzRZVWQxz"></van-radio>
</template>
</van-cell>
</van-cell-group>
</van-radio-group>
</div>
</div>
</div> </div>
</template> </div>
<div lc_id="L5fPGRqjYZ">
<div class="demonstration-vant" lc_id="3qMdltHE4i">DatetimePicker 时间选择 </div>
<van-datetime-picker v-model="currentDate" type="date" title="选择年月日" lc-mark :min-date="minDate"
:max-date="maxDate" lc_id="14vPN9ntBV"></van-datetime-picker>
</div>
<div lc_id="ODgqdaL6ED">
<div class="demonstration-vant" lc_id="hrPSBFZ6Hh">Checkbox 复选框</div>
<van-checkbox-group lc-mark v-model="result" lc_id="F2p5QIbo3W">
<van-checkbox name="a" lc_id="90jCPURt8o">复选框 a</van-checkbox>
<van-checkbox lc-mark name="b" lc_id="bvtnBJfQnk">复选框 b</van-checkbox>
</van-checkbox-group>
</div>
<div lc_id="V9/vkUb/HX">
<div class="demonstration-vant" lc_id="hnZi6s2mpt">Checkbox 复选框(全选与反选)</div>
<div lc-mark lc_id="JHg6xi7Ws5">
<van-checkbox-group v-model="result" ref="checkboxGroup" lc_id="8EUt8S6cIj">
<van-checkbox name="a" lc_id="vAZDx+cKaQ">复选框 a</van-checkbox>
<van-checkbox name="b" lc_id="lNhFITM1W/">复选框 b</van-checkbox>
<van-checkbox lc-mark name="c" lc_id="BVLbIHoPpi">复选框 c</van-checkbox>
</van-checkbox-group>
<br lc_id="lEi0tbIvkM" />
<van-button type="primary" size="small" @click="checkAll" lc_id="azfVg1jydO">全选</van-button>
<van-button plain size="small" @click="toggleAll" lc_id="FxjbFUMiWD">反选</van-button>
</div>
</div>
<div lc_id="jl0/Xq6pS6">
<div class="demonstration-vant" lc_id="5GzBrVy4XX">Radio 单选框</div>
<div lc_id="TT2Onqet2I">
<van-radio-group lc-mark v-model="radio10" lc_id="Fq7xqCU/Ul">
<van-radio name="1" lc_id="eX5Wd5A8M+">单选框 1</van-radio>
<van-radio lc-mark name="2" lc_id="QN9H1HdL7S">单选框 2</van-radio>
</van-radio-group>
<br lc_id="5uaRLSgQ+B" />
<van-radio-group lc-mark v-model="radio10" lc_id="p/WdWJotYb">
<van-cell-group lc_id="7SU7k9W/RI">
<van-cell title="单选框 1" clickable @click="radio10 = '1'" lc-mark lc_id="cu2BQ/D1Gt">
<template #right-icon lc_id="yLUfrpVFId">
<van-radio name="1" lc_id="9sKStrXAMF"></van-radio>
</template>
</van-cell>
<van-cell title="单选框 2" clickable @click="radio10 = '2'" lc_id="KnbWE2AKwX">
<template #right-icon lc_id="vSyCi55TWO">
<van-radio name="2" lc_id="gDzRZVWQxz"></van-radio>
</template>
</van-cell>
</van-cell-group>
</van-radio-group>
</div>
</div>
</div>
</template>
<script> <script>
export default { export default {
data() { data() {

View File

@ -36,15 +36,12 @@
</div> </div>
<div lc_id="HFSjLBSjr4"> <div lc_id="HFSjLBSjr4">
<div class="demonstration-vant" lc_id="5zilvW7BTu">ActionBar 动作栏</div> <div class="demonstration-vant" lc_id="5zilvW7BTu">ActionBar 动作栏</div>
<div style="position: relative;" lc-mark lc_id="LywB4w//P/"> <div style="position: relative;" lc-mark lc_id="Pt76lmgRrB">
<van-action-bar lc_id="44C1zLHqlz"> <van-action-bar lc_id="9ToRhiLix2">
<van-action-bar-icon icon="chat-o" text="客服" @click="onClickIcon" lc_id="2rUDSvAMip"> <van-action-bar-icon icon="chat-o" text="客服" @click="onClickIcon" lc_id="+KLvcHu+dq"></van-action-bar-icon>
<van-action-bar-icon icon="cart-o" text="购物车" @click="onClickIcon" lc_id="MAju6gwdil"> <van-action-bar-icon icon="cart-o" text="购物车" @click="onClickIcon" lc_id="jmPWsraNbw"></van-action-bar-icon>
<van-action-bar-icon icon="shop-o" text="店铺" @click="onClickIcon" lc_id="gSY/APPOCK"> <van-action-bar-icon icon="shop-o" text="店铺" @click="onClickIcon" lc_id="9nvKcSlBKx"></van-action-bar-icon>
<van-action-bar-button type="danger" text="立即购买" @click="onClickButton" lc_id="iHUXW5cxjd"></van-action-bar-button> <van-action-bar-button type="danger" text="立即购买" @click="onClickButton" lc_id="SxUbF/TzkY"></van-action-bar-button>
</van-action-bar-icon>
</van-action-bar-icon>
</van-action-bar-icon>
</van-action-bar> </van-action-bar>
</div> </div>
</div> </div>
@ -149,7 +146,15 @@ export default {
:v-deep(.van-submit-bar) { :v-deep(.van-submit-bar) {
position: initial; position: initial;
} }
</style>
<style>
.van-action-bar { .van-action-bar {
position: relative; position: relative;
padding-bottom: 0; padding-bottom: 0;
}</style> }
.van-submit-bar {
z-index: 0;
}
</style>

View File

@ -239,6 +239,7 @@ async function compiler(path) {
format: true, format: true,
indentBy: " ", indentBy: " ",
supressEmptyNode: false, supressEmptyNode: false,
singleTags: ['br']
}; };
const parser = new Parser(defaultOptions); const parser = new Parser(defaultOptions);