- 博客(38)
- 收藏
- 关注
原创 CSS前端面试
绝对定位若父级没有设置相对定位,则默认会以浏览器为基准变化,若父级设置了相对定位,则以父级为基准变化。设置为50%,margin-left设置为子元素width的一半,margin-top设置为子元素height的一半。:相对单位,基准点为父节点字体的大小,如果自身定义了font-size按自身来计算,整个页面内1em不是一个固定的值。相对定位会保留原来的位置,【不脱离文档流】。给父级设置相对定位。给子级设置绝对定位,并且给子级的。给子级设置绝对定位,并且给子级的。给子级设置绝对定位,并且给子级的。
2023-08-05 14:36:55
754
原创 原生jquery实现倒计时功能【animate】动画特效包含天,时分秒
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>倒计时</t
2023-05-03 10:50:52
853
1
原创 当新增和删除使用同一element表单组件时校验重置
当我们新增和编辑使用的是同一个el表单时,当表单打开时需要重置表单校验,所以在表单加载完成之后添加代码
2021-12-29 11:25:45
584
原创 前端基础flex弹性盒子弹性布局详解及用法
我们通常看到的网页结构大概有这么几种:使用Flex 布局就可以简便、完整、响应式地实现各种页面布局。任何一个容器都可以设置弹性布局,行内块也可以.box{ display: flex;}注意: 设为 Flex 布局以后,子元素的float、clear和vertical-align属性将失效。flex属性:flex-direction:用来控制子项整体布局方向,是从左往右还是从右往左,是从上往下还是从下往上。取值含义column显示为列column-rev
2021-10-15 15:19:43
1169
原创 整合ES6-ES12及相关面试题整理
目录ES6箭头函数模板字符串解构赋值扩展运算符对象属性简写promise(重点说一下)let 与 constES7数组.includes()ES8async/awaitES9Object.values()Object.entries()Rest/Spread 属性ES10Array的 flat()方法和 flatMap()方法String的 trimStart()方法和 trimEnd()方法Object.fromEntries()新的基本数据类型 BigIntSymbolES11Promise.allSe
2021-08-09 17:27:04
943
原创 解决vscode 无法识别 cnpm
如果你安装了淘宝镜像,在vscode中报这个错的话,就转第一步。否则就去安装淘宝镜像:npm install -g cnpm -registry=https://registry.npm.taobao.org第一步:我们需要以管理员的身份执行window Powershell(window+r,然后输入Powershell),然后终端内输入 set-ExecutionPolicy RemoteSigned回车,之后输入A就可以了,如果输入A报错的话就转第二步第二步:输入:输入Set-Executi
2021-05-24 17:05:27
1092
原创 JavaScript 常见面试题
文章目录实现延迟加载的方式什么是作用域链什么是同源策略什么是闭包?用途及注意的地方call、apply、bind的区别对缓存的理解http工作原理http与https的区别性能优化的方法对this的理解new操作符具体干了什么什么是css预处理器及优点cookies、sessionStorage、localStorage的区别模块化开发的优点常用的模块化的方案有哪些ES6和ES7的区别及H5新特性js继承propertype、_proto、constractor的关系简述对promise的理解ajax请求数
2021-05-07 17:13:14
310
原创 VUE 常见面试题
文章目录v-show和v-if的区别methods、computed、watch三者的区别标题如何给一个响应式对象中添加一个属性vue中组件通讯的方式有哪些vue的生命周期解释一下vue中单向数据流的理解什么是动态组件,如何使用,以及keep-alive的作用使用keep-alive会增加哪两个生命周期vue中solt的使用方式,以及solt作用域插槽的用法为什么在组件内部data是一个函数而不是一个对象vue中动画如何实现浅谈对路由的理解路由跳转方式有哪几种路由传值的方式有哪几种路由配置项常用属性及作用
2021-04-26 16:31:40
452
1
原创 JS VUE 递归循环遍历渲染并实现增删功能
封装递归组件if-condition-<template> <div> <div v-if="dataInfo.children && dataInfo.children.length>0" class="condition-item-con"> <div class="condition-line-con" v-if="dataInfo.children && dataIn.
2021-04-07 19:45:11
787
1
原创 element 表格中使用el-switch前弹出提示
<el-table-column label="是否启用"> <template slot-scope="scope"> <el-switch v-model="scope.row.enable" @change="upadteEnable($event,scope.row)" active-color="#3C78FF" inactive-color="#C0C4CC"></el-switch> </templa.
2021-04-02 20:31:29
965
原创 使用Bus进行跨组件传值
bus.jsimport Vue from 'vue'const Bus = new Vue()export default Bus使用的时候要引用Busimport Bus from './bus.js'this.$nextTick(()=>{//解决第一次触发emit无效问题 Bus.$emit('updateFormData',123)})beforeDestroy () { // 销毁监听事件 Bus.$off('updateFormData')}imp
2021-03-11 20:50:47
334
原创 Vue 基于vue-codemirror实现的代码编辑器
基于vue-codemirror实现的代码编辑器开发环境jshint 2.11.1jsonlint 1.6.3script-loader 0.7.2vue 2.6.11vue-codemirror 4.0.6element-ui 2.13.1 (使用到element-ui message组件,提示错误消息,如果不想安装该组件,替换编辑器中的this.$message所在行函数代码即可)功能介绍1、 支持不同的代码编辑模式目前仅支持支持json, sql, javascript,css,
2021-02-26 18:14:43
3587
2
原创 echarts属性
// 全图默认背景 // backgroundColor: ‘rgba(0,0,0,0)’,// 默认色板color: ['#ff7f50','#87cefa','#da70d6','#32cd32','#6495ed', '#ff69b4','#ba55d3','#cd5c5c','#ffa500','#40e0d0', '#1e90ff','#ff6347','#7b68ee','#00fa9a','#ffd700', '#6699FF','#ff6666','#3cb37
2021-02-04 13:54:26
116
原创 常用正则校验,邮箱,手机号,密码,特殊符号等
num_reg: /^\d+$/,//校验数字正则 ename_vaild_reg:/^[0-9a-zA-Z_-]{1,}$/,//数字、26个英文字母或者下划线或中划线 positive_integers_reg:/^[1-9]+[0-9]*]*$/,//正整数 url_reg:/(^((https|http)?:\/\/)[^\\s]+)/,//URL的正则 parameter_reg:/^[a-zA-Z]*$/,//英文字母 field_vaild_reg:/.
2021-01-27 15:55:24
416
原创 通过url地址字符串,筛选出参数
/** * 通过url字符串,筛选出参数 * @param url url字符串 * @return {Object} 返回参数对象 */ getQueryString(url) { let args = {}; // 保存参数数据的对象 let index = url.indexOf('?') if(index != -1) { let qs =url.substr(index+1); // 获取url中"?"符后的字串
2021-01-27 15:42:41
368
原创 处理时间期限,两个时间相减
/*** 转换时效 * @creatTime creatTime 创建时间 时间戳 * @param time 时效 20天 */dateTimes(creatTime,time){ var timestamp = Date.parse(new Date());//当前时间 var times = creatTime+(time*1000*60*60*24); var runTime = parseInt((times- timestamp)/1000); var
2021-01-27 15:40:37
341
原创 Swiper安装及使用,以及解决不能自动轮播和左右切换问题
首先先装下依赖npm install swiper vue-awesome-swiper --save在main.js里进行全局引入//swiperimport VueAwesomeSwiper from "vue-awesome-swiper"Vue.use(VueAwesomeSwiper)//Swiper 6.0版本后要单独引用Navigation, Pagination, EffectFade, Autoplayimport Swiper, { Navigation, Paginat
2021-01-14 13:31:22
1050
原创 通过a标签下载图片和文件
可以解决图片不同源下载问题<img class="detail-img" v-for="(item,index) in fileList" :src="item.url" :key="index" @click="downloadIamge(item.url,item.name)"/>/** * 表单查看详情状态下载图片 * @param imgSrc 图片地址 * @param name 图片名称 */downloadIamge(imgSrc, name) { var
2021-01-06 14:52:16
1109
原创 Promise 和 async-await的区别-前端面试题
Promise 和 async-await 都是优化异步编程体验的解决方案。Promiseasync-awaitpromise 出现解决了传统 callback 函数回调地域的问题,支持链式调用可以停.then,promise 分别有 3 种状态一旦函数执行 promise 有了结果就无法改变,遇到复杂的业务逻辑 promise 显然不是那么方便需要不停 then 这样语法显然也不美观。async,await 是基于 promise 实现的,它是基于 Generator 函数的语法糖
2021-01-04 16:47:06
2016
原创 +element+<el-menu> 导航菜单二次封装,递归、无限循环遍历,支持横向排列、纵向排列
父组件<template> <div class="element-box"> <el-menu :default-active="value" @select="changeEvent" > <menu-tree :menuData="dataList"></menu-tree> </el-menu>
2020-12-25 16:58:44
2160
3
原创 js 判断校验对象数组中某一属性是否重复
/** * 判断数组中是否有重复 * @param arr 数组 * @param key 要校验的key值 */ isRepeat(arr,key){ var obj = {}; for(let i=0;i<arr.length;i++){ if(obj[arr[i]...
2020-12-04 16:41:26
5039
原创 el-select element 选择器懒加载,滚动加载
<el-form-item label="业务主题:" prop="theme" required> <el-select v-model="ruleForm.theme" :placeholder="language.matter_theme" v-el-select-loadmore="loadMoreTheme" class="w-600"> <el-option v-for="item in th.
2020-12-03 10:29:44
1282
原创 MongoDB管理工具studio 3t ,解决到期问题
新建一个文本文档,将下面代码粘贴进去,然后另存为studio3t.bat文件名@echo offECHO 重置Studio 3T的使用日期......REG DELETE "HKEY_CURRENT_USER\Software\JavaSoft\Prefs\3t\mongochef\enterprise" /fRMDIR /s /q %USERPROFILE%\.3T\studio-3t\soduz3vqhnnja46uvu3szq--RMDIR /s /q %USERPROFILE%\.3T\s
2020-10-28 13:35:47
431
原创 js 将对象列表转换成想要的对象数组,数组重构
将这种格式转换成下面这种let arr = [{ profession: "专业1", work_type: "工种1", train_time: "2020/10/26-2020/10/26" }, { profession: "专业1", work_type: "工种1"
2020-10-27 16:23:37
861
原创 vue js实现列表拖拽
<el-radio-group v-else v-model="radioLabel" class="radio-group"> <div v-for="(item,index) in dataSettingForm.staticData" :key="index" draggable="true" @dragstart="dragStart(index)" @dragenter="dragEnter(index)" @drageover="dragOver(index)" @dr.
2020-09-11 13:44:24
2084
1
原创 vue-js-获取到上传音乐的标题,作者,时长,大小,封面
第一个链接是npm install的第二个是引入script的,以防万一我两个都用了https://www.npmjs.com/package/jsmediatagshttps://wwwindex.bootcdn.cn/jsmediatags/下面是我在项目中使用方法先在index.html中引入script <script src="https://cdn.bootcdn.net/ajax/libs/jsmediatags/3.9.3/jsmediatags.js"><
2020-06-12 14:53:31
1259
3
原创 vue-element-穿梭框表格el-transfer
左边表格是调后台接口所得到的,不调接口可以自己写点数据的哈,在实现穿梭框的同时又自己写了删除列表功能(弹出框哦),可删除可恢复。下面是HTML代码<template> <section> <!--工具条--> <el-row> <el-col :span="18" style="padding-bottom: 0px;margin-left:4%;"> <el-form style="display
2020-06-12 09:48:29
7113
原创 vue-js-elementUI表格上移下移和手写批量删除不调后端接口
这里是HTML代码<!--工具条--> <el-row> <el-col :span="24" class="toolbar" style="padding-bottom: 0px;"> <el-form class="title-bar" style="border-bottom: 2px solid #eef1f6;margin-bottom: 10px;"> <el-form-item st
2020-06-10 17:05:18
584
原创 项目中遇到的数组转换
遍历出数组中某一项的值:let lengths = this.selectedStaffList.map(item => item.musicLength);//输出:["1","2"]将遍历的值转化成数字:let _lengths = lengths.map(Number);//输出:[1,2]数组求和:_lengths.forEach(item => { sum = sum + item; });//输出:3...
2020-06-10 16:30:59
125
原创 手动写后台管理列表分页
<template> <div class="vm-image-list"> <Row class="image-list-heading vm-panel"> ... </Row> <Row class="image-list" :gutter="16"> // v-for循环v-card组件 <Col :lg="6" :sm="12" class="vm-margin" v-
2020-05-28 15:28:34
334
原创 js/vue处理日期格式
switchTimeFormat (time) { const dateTime = new Date(time) const year = dateTime.getFullYear() const month = dateTime.getMonth() + 1 const date = dateTime.getDate() const hour = dateTime.getHours() const minute = dateTime.getMinutes() c
2020-05-19 17:04:37
352
原创 vue-js-上传图片
用的formData的方法上传<div class="per-infos-box infos-head"> <p class="infos-title">头像</p> <img :src="imageUrl" class="avatar" alt /> <input type="file" @change="getFile(...
2020-04-09 15:34:16
404
2
原创 vue-分页,上拉刷新,下拉加载更多-简单版
这里会用到vue的scroll插件,因为用的比较多就在main.js中引用了,别忘安装依赖npm install vue-scroller -dimport VueScroller from 'vue-scroller'; Vue.use(VueScroller);下面放代码<template> <div class="takeout-box">...
2020-04-09 15:16:44
1209
原创 vue移动端使用-订单超时,时间计算
data() { return { overTime: "",//超时时间 orderUuid: this.$route.query.orderUuid, orderInfos: {}, expectFinishTime: "",//预定到达时间 }; }, mounted() { this.getOrderDe...
2020-04-09 15:04:51
664
原创 前端渲染和后端渲染的区别
前端渲染:指的是后端返回json数据,前端利用预先写的html模板,循环读取json数据,拼接字符串,并插入页面后端渲染:指的是前端发送请求,后端用后台模板引擎直接生成html,前端接收到数据后直接插入页面对比:对比前端渲染后端渲染页面显现速度主要受限于带宽和客户端激起的好坏,优化的好,可以逐步动态展现内容快,受限于用户的带宽流量消耗多少一点,(可...
2019-11-06 22:11:41
398
原创 浏览器渲染页面的流程
浏览器渲染页面的流程解析HTML文档,构建DOM树:过程:读取html文档 -> 将字节转成字符串 -> 确定标签 -> 将标签转成节点注:(js会对DOM节点未进行操作,浏览器无法预测未来,DOM节点的具体内容为防止无效操作,节省资源,只能阻塞DOM树构建)构建渲染(render)树:解析对立的css样式文件信息,(包括JS生成的样式和外部css文件)注:(由D...
2019-11-04 11:47:22
223
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人