问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Vue项目常见问题

发布网友 发布时间:2024-09-29 04:20

我来回答

1个回答

热心网友 时间:2024-09-29 21:54

input输入框的*

dom上的代码:

<spanclass="item-wrapper"v-if="showInterval"><el-inputplaceholder="在此输入时间间隔"class="input"v-model="formData.interval"@input.native="onInput"></el-input></span>

当我们在vue中遇到input输入框只能输入数字的问题,例如需要实现输入框中只能输入[1,59]区间的整数,我们可以采用以下方法做*,这样当我们输入其他不符合的值会直接*我们无法输入进去:

onInput(e){//验证是否是纯数字letisNumber=/^\d*$/.test(e.target.value);//过滤非数字e.target.value=e.target.value.replace(/\D/g,"");if(!isNumber||e.target.value<1||e.target.value>59){this.$message.warning("只能输入[1,59]区间的整数");e.target.value=''}e.target.value=(e.target.value>=1&&e.target.value<=59&&e.target.value.match(/^\d*/g)[0])||null;},头像上传问题

dom代码:

<formid="form_face"method="post"enctype="multipart/form-data"style="width:auto;"><inputtype="file"name="fileToUpload"ref="fileToUpload"accept="image/png,image/jpeg,image/gif"@change="fileSelected"style="display:none;"></form>

我们上传文件后需要将流传给后端,我们上传时可以*上传图片的类型以及图片的大小:

fileSelected(e){let_this=this//得到上传的第一个文件_this.imgObj=e.target.files[0];/*图片类型正则验证*/letimgStr=/\.(jpg|jpeg|png|JPG|PNG)$/;if(!imgStr.test(this.imgObj.name)){this.$message.error('请上传图片')return;}else{//异步读取存储在用户计算机上的文件(或原始数据缓冲区)的内容this.file=newFileReader();//在读取操作完成时触发this.file.onload=()=>{//图片文件赋值给图片标签路径this.formData.headPortrait=this.file.result}//将读取到的文件编码成DataURLthis.file.readAsDataURL(this.imgObj);}},开始时间和结束时间间隔一个月

dom代码:

<spanclass="title">开始时间</span><el-date-picker:format="sFormat"v-model="cStartDate"value-format="yyyy-MM-dd":picker-options="sOptions"></el-date-picker><spanclass="titlee-time">结束时间</span><el-date-picker:format="eFormat"v-model="cEndDate"value-format="yyyy-MM-dd":picker-options="eOptions"class="picker"></el-date-picker>

我们在data中定义format对应的sFormat和eFormat

sFormat:'yyyy年MM月dd日',eFormat:'yyyy年MM月dd日',

我们在data中定义判断开始时间和结束时间以外的时间设置为不可选择状态:

sOptions:{disabledDate:this.startDateDisabled},eOptions:{disabledDate:this.endDateDisabled},

我们可以给cStartDate和cEndDate进行获取和赋值:

cEndDate:{set($val){if(this.type==1)this.endDate=$val;elsethis.vEndDate=$val;},get(){if(this.type==1)returnthis.endDate;elsereturnthis.vEndDate;}},cStartDate:{set($val){if(this.type==1)this.startDate=$val;elsethis.vStartDate=$val},get(){if(this.type==1)returnthis.startDate;elsereturnthis.vStartDate;}},

然后我们在这里写开始时间和结束时间相差一个月的逻辑代码:

//开始时间的判断逻辑startDateDisabled($time){//开始时间和结束时间清空,发现开始时间不能选中,所以增加一行if代码if(!this.cEndDate)return''return$time.getTime()>=time2LongString(this.cEndDate)||$time.getTime()<=(time2LongString(this.cEndDate)-30*24*3600*1000)},//结束时间的判断逻辑endDateDisabled($time){return$time.getTime()<=(time2LongString(this.cStartDate)-24*3600*1000)||$time.getTime()>=(time2LongString(this.cStartDate)+30*24*3600*1000)},父子组件传值问题

一般父组件传递给子组件的值,我们不建议在子组件中去修改父组件传递的prop,因为vue是单向数据流,易于监测数据的流动,出现了错误可以更加迅速的定位到错误发生的位置。所以一旦我们在子组件中修改父组件中传递的值,控制台会显示警告。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
步步高学习机@iboxH2 H2学习机的屏幕大小? 6-7万左右纯电 女生想买台便宜的小车在城市代步,有什么好推荐?电动车最好? 河南德盛智能环保科技有限公司怎么样? 深圳市德盛铭电科技有限公司怎么样? pvc防水门生产厂家哪个好呢? 晋江市德顺陶瓷建材有限公司简介 酒店家具厂家 梨子酿酒最简单的方法 找一些火影带卡的耽美同人图,高清的,想用来做手机壁纸,一定要带卡... vivo手机闪充协议是什么协议啊? 去北京玩,住哪个酒店好 哈尔滨红肠有什么好吃的做法值得分享? 北京北海公园附近还有哪可以游玩_北海住哪里离旅游景点近又便宜_百度... 红肠有什么创意吃法? 印立淘印立淘简介 东风风神AX71・4T发动机怎么样 风神AX7这车1.6T发动机怎么样?油耗大约是多少? .../3,1/4,2/4,3/4,1/5,…,中,78/99是第几项?求前100项的和。 1/2+2/3+3/4+4/5+...97/98+98/99+99/100=?的简便计算 从1/2,2/3,3/4,4/5,5/6,...97/98,98/99,99/100中任选五个数,使这五个... ...6分之5) ... (98分之1 98分之3... 98分之97)等于多少 ...分之2+4分之3》+...+《99分之1+99分之2+...+99分之97+99分之98... 将1\2,2\3,3\4,•••,97\98,98\99,99\100,这99个分数相乘,积是... 故事和酒都没有下一句 谁心里都有故事,谁嘴上都讲故事.故事就是过去的事,其实,过一分钟就是... 你过得快不快乐,只有你自己知道。其实谁都有一段不为人知的故事... 哈佛剑桥优等生全脑思维游戏大全内容简介 深圳市头家技术有限公司怎么样? 求这张火影晓,同人图的无水印大图 抚州中天电力设备有限公司怎么样? 抚州市临川区东海家用电器销售有限公司怎么样? 我的苹果4s 买的是八个g的为什么我查手机内存只有六个g呢 我的电脑装着八g内存条为什么不显示可用内存 我的C盘总空量有八G,重装系统之后,里面的文件总容易5G,可是乘余空间只... ​梨子啥时候套袋好 一个圆柱底面半径为5厘米,侧面展开后是一个正方形,这个圆柱的高是多少... ...5dm,侧面展开图正好是一个正方形,这个圆柱的高是多少dm?表面积_百 ... ...5dm,侧面展开图正好是一个正方形,这个圆柱的高是多少dm?表面积... 一个圆柱的底面半径是5分米,侧面展开后是一个正方形,这个圆柱的表面积是... 一个圆柱的底面半径为5分米,侧面展开后是一个正方形,这个圆柱的体积是多... QQ三国什么职业4孔鞋便宜 QQ三国40级阴阳鞋绿装四孔的价格 苹果账户被禁用了怎么办啊? 怎么样才能拒绝别人的邀约呢? 如何礼貌的回绝别人的邀请? 邢台市地处河北省南部,太行山脉南段东麓,华北平原西部边缘。下图... 邢台是怎么样的? 怎么延长白玉兰的花期