当前位置: 首页 > news >正文

家教网站如何做网站应该如何进行优化

家教网站如何做,网站应该如何进行优化,网站关键词的布局,如何做网站平台文章目录 一、背景二、操作步骤1.复现前的准备工作(1)vue版本和view design 版本(2)创建一个组件(组件中根据类型渲染不同的组件)(3)在list.vue页面中引入组件,传入配置&…

文章目录

  • 一、背景
  • 二、操作步骤
    • 1.复现前的准备工作
      • (1)vue版本和view design 版本
      • (2)创建一个组件(组件中根据类型渲染不同的组件)
      • (3)在list.vue页面中引入组件,传入配置,使用组件
    • 2.出现的问题
    • 3.解决问题
  • 总结


一、背景

  • View design + vue2的项目,点击编辑按钮,出现弹窗,为了重复使用,写了一个传入配置构建编辑弹窗的组件。组件中有inputNumber组件,出现以下问题:
  • 理想场景:点击编辑打开弹窗后直接点击确定,直接请求编辑接口,然后关闭弹窗。
  • 实际场景:点击编辑打开弹窗后,数字输入框显示数字1,然后表单校验不通过。

二、操作步骤

1.复现前的准备工作

(1)vue版本和view design 版本

{"vue": "^2.6.11","view-design": "^4.7.0",
}

(2)创建一个组件(组件中根据类型渲染不同的组件)

<Formref="advertisingRef":model="advertiserDataForm"name="basic"class="formclass"autocomplete="off":label-width="130"><FormItemv-for="item in advertisingConfig":key="item.label":label="item.label":prop="item.name":rules="item?.rules?.required || item?.rules?.[0]?.required ? item?.rules : null":class="{'itemBorder': item.isBorder, 'itemMargin': item.isMargin, 'itemMarginBottom': item.isMarginBottom }"><template v-else-if="item.type === 'inputNumber'"><InputNumberv-model="advertiserDataForm[item.name]":disabled="item.disabled":style="{width: item.width}":min="item.min"/><spanv-if="item.isIcon"class="ml5">%</span></template></FormItem></Form>

(3)在list.vue页面中引入组件,传入配置,使用组件

[
........{name: 'returnPoint',label: '单价',value: 0, // 绑定数据type: 'inputNumber', // 数据类型min: 0, // 最小值isIcon: true, // 是否显示%iconwidth: '120px',disabled: false, // 是否禁用rules: { required: true, type: 'number', message: '单价不能为空', trigger: 'submit' }}
]

2.出现的问题

【总金额】和【单价】都是使用的inputNumber
问题1: 打开弹窗,切换【渠道资源】出现【总金额】默认展示为1
问题2: 表单校验不通过,奇怪的是输入值后就会会通过表单校验
[图片]

3.解决问题

(1)在组件中打印绑定的数据,和绑定数据的数据类型(由于view design 的表单校验需要校验数据类型)
获取线索:打印后发现绑定数据为空,数据类型为undefined,
(2)我设置的默认值明明为0,怎么可能是undefined呢?
原因:是由于【总金额】是对象totalAmountParams的unitPrice,切换的时候获取不到值,导致
解决:赋值的时候加上?即可。
注意点:判断不要直接写成,this.advertiserForm.unitPrice = row.totalAmountParams?.unitPrice ? row.totalAmountParams?.unitPrice : null,而是需要 row.totalAmountParams?.unitPrice >= 0 ,不然值为0,回显数据为空
this.advertiserForm.unitPrice = row.totalAmountParams?.unitPrice >= 0 ? row.totalAmountParams?.unitPrice : null

(3)为什么数据变成1呢?
拷贝组件中的示例demo,如下,设置默认值为undefined,最小值为0,最大值为100,在demo示例中不难发现,默认值为undefined ,值会默认变成string类型的1。属于是view design 本身的bug
解决: 将只默认设置为null/空字符串

<template><InputNumber :max="100" :min="0" v-model="value1"></InputNumber>
</template>
<script>export default {data () {return {value1: undefined}}}
</script>

总结

  • 设置view design inputNumber组件设置默认值不能设置undefined,可以设置为null/空字符串
  • 写代码需要注意取的值可能为空,使用‘点语法’获取的尽量使用?来校验可能为空的情况进行处理
http://www.hkea.cn/news/6797/

相关文章:

  • 洛阳酒店网站开发大全网页设计软件
  • 学做蛋糕有哪些网站西安seo外包行者seo
  • 开公司 专做网站app推广一手单平台
  • 茶叶价格网站建设qq推广
  • 飓风算法受影响的网站有哪些免费文案素材网站
  • 学校网站建设所使用的技术seo网站查询
  • 用dw做php网站关键词搜索排名软件
  • 上海个体户注册代办苏州吴中区seo关键词优化排名
  • 怎样自建网站网站怎么优化推广
  • 做网站要会没软件seo网站seo
  • 歙县电子商务网站建设网络seo排名
  • 做搜狗网站优化排名软微网站
  • 深圳市宝安区西乡街道seo原创工具
  • 如何做品牌网站seo快速排名软件平台
  • 拥有域名后怎么搭建网站企业网站策划
  • 做餐饮系统网站国内的搜索引擎有哪些
  • 西安有哪些网站建设公司友情链接网站源码
  • 运营和广告投放的区别整站seo服务
  • 网站开发增值税税率搜索引擎推广的方法有哪些
  • 云电子网站开发seo自动工具
  • 龙岩网站建百度收录什么意思
  • 自建网站做网上超市可行吗正规seo排名公司
  • 东易日盛装饰公司上市了吗保定seo博客
  • 厦门网站建设培训费用做网站推广好做吗
  • 丹东有做公司网站的吗qq空间秒赞秒评网站推广
  • 网站制作租用空间论坛平台
  • 南宁做网站找哪家公司重庆网站优化软件
  • 贵阳企业网站建设引擎搜索有哪些
  • 做网站商谷歌搜索引擎下载
  • 建设总承包网站手机免费建站app