自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 正则表达式

正则表达式在线工具 https://regexr-cn.com/快捷记录

2023-06-07 21:31:12 76

原创 javascript常用方法

在处理输入框相关业务时,往往会判断输入框未输入值的场景。ES6中新出的空值合并运算符了解过吗,要写那么多条件吗?ES6中的可选链操作符。

2023-05-09 11:27:41 751

原创 格式化日期

格式化日期

2022-10-21 14:45:14 113

原创 文件下载实现

文件下载实现

2022-10-21 14:41:55 81

原创 JSreplace()方法替换变量(可以通过变量进行全文替换)

JSreplace()方法替换变量(可以通过变量进行全文替换)

2022-07-27 15:46:26 653

原创 vue项目引入新字体

vue项目引入新字体

2022-07-13 14:38:39 489

原创 前端实现表格数据分页

前端实现分页

2022-07-13 10:43:58 766

原创 表格操作行高亮显示

表格操作行高亮显示

2022-07-13 10:34:57 116

原创 iview 日期组件表单验证

iview 日期组件表单验证

2022-01-29 17:05:04 644

原创 默认插槽和具名插槽

默认插槽和具名插槽

2022-01-25 10:16:11 829

原创 模块化导入导出(commomJs和ES6)

模块化导入导出

2022-01-25 10:09:08 969

原创 对象属性排序

对象属性排序(数值排序、字符串排序)

2022-01-17 17:08:02 367

原创 el-table动态合并数据相同的列

el-table动态合并数据相同的列

2022-01-11 09:31:09 1171

原创 Echarts绘图

Echarts绘图

2022-01-10 15:40:05 115

原创 表格表头增加复选框(列是动态for循环生成)

1、利用:render-header="renderHeader"表头渲染复选框<el-table ref="multipleTable" :data="pointdevData" tooltip-effect="dark" v-loading="tableLoading" size="mini" style="width:98%"

2021-11-26 12:50:47 1089

原创 ES6相关知识

剩余参数1、eg://args是一个数组sum(first,...args){console.log(first); // 10console.log(args); // [20,30]}sum(10,20,30)2、与解构共同使用let stu=['wangwu','zhangsan','lisi']let [s1,...s2]=studentsconsole.log(s1); // wangwuconsole.log(s2); //['zhangsan','lisi']3

2021-09-22 22:56:23 69

原创 Js执行机制

1.先执行同步任务,再行异步任务(函数作为参数传递的)2.有多个同步任务时根据具体事件处理如以上示例代码执行机制:主线程同步任务有打印1、打印2,click是回调函数、定时器函数提交给异步进程处理每次触发点击异步进程会把点击函数放进异步队列,3秒后把定时器函数放进异步队列一直触发一直循环执行,这样就叫时间循环。结果:打印1、打印2。接下来若在三秒前点击则先执行点击函数。三秒之后则先执行定时器...

2021-09-05 22:28:00 86

原创 变量作用域

变量的作用域定义在函数外的变量就是全部变量JS中,var声明的变量是有作用域的在函数体内声明,函数体外不可以使用(闭包可实现)function fun(){ var x=1; x=x+1}x=x+2 // x is not defined如果两个函数使用了相同的变量名,只要在函数内部,就不冲突function fun1(){ var x=1; x=x+1}function fun2(){ var x=‘A’; x=x+1}内部函数可以访问外部函数定义的

2021-07-11 20:59:04 47

原创 函数及面向对象

函数和方法长得一样方法:对象(属性,方法)函数:函数放在对象里面就变成了方法1 函数1.1 定义函数定义方式一:绝对值函数function abs(x){ if (x>=0){ return x; }ekse{ return -x; } }一旦执行到return代表函数结束,返回结果如果没有执行return ,函数执行完也会返回结果,结果就是undefined定义方式二:var abs=function (x){ if (x>=0){ retur

2021-07-11 20:11:44 64

原创 JavaScript基本数据类型

1.数据类型简介数值、文本、图片、音频…numberjs不区分小数和证书123 //整数123123.1 //浮点数NaN //not a numberInfinity //表示无限大布尔值true false逻辑运算&& 和,两个都为真|| 或,一个真、一个假! 非,真即假,假即真比较运算符=== 等于(类型不一样,值一样,结果为true)=== 绝对等于(类型、值都一样)须知:NaN与所有数值都不等,包括自己通过is

2021-07-11 19:37:18 110

原创 封装好的组件,少量地方不同如何使用

1.在封装好的组件中,给不需要显示的表单加v-if,如:<el-form-item v-if="showGrouping" label="设备分组:" prop="deviceSubId"> </el-form-item>2.在data中初始化定义数据,为trueexport default {name: “”,props: {showGrouping: {// 设备分组显示type: Boolean,default: true,},3.在需

2021-07-08 20:19:38 240

原创 视频推流拉流播放

1.安装go环境安装包下载地址为:https://golang.org/dl/Windows 下可以使用 .msi 后缀(在下载列表中可以找到该文件,如go1.4.2.windows-amd64.msi)的安装包来安装。默认情况下 .msi 文件会安装在 c:\Go 目录下。你可以将 c:\Go\bin 目录添加到 Path 环境变量中。添加后你需要重启命令窗口才能生效。安装测试创建test.go 文件test.go 文件代码:package mainimport "fmt"func

2021-06-20 11:57:00 792

原创 实现搜索功能

1.在文本框设置数据双向绑定文本框与data中的搜索关键字query绑定<el-input placeholder="请输入内容" v-model="queryInfo.query">export default { // 当前组件私有数据 data() { return { // 获取用户列表的参数对象 queryInfo: { //搜索关键字 query: "", //当前的页数

2021-05-12 17:05:53 116

原创 用户状态修改

第一步:监听switch开关的change事件<el-switch v-model="scope.row.mg_state" @change="userStateChanged(scope.row)"> </el-switch>第二步:拿到最新状态发起请求,调用接口把状态同步到服务器中 //监听switch开关状态的改变 async userStateChanged(userinfo) { const { data: res } = aw

2021-05-12 16:54:23 393

原创 用作用域插槽渲染状态列

用作用域插槽渲染状态列<el-table-column label="状态"> <!-- 作用域插槽 ,通过slot-scope接受当前作用域的数据,通过scope.row拿到对应该行的数据,el-switch通过v-model绑定在数据mg_state属性上,有作用域插槽可以去掉prop属性--> <template slot-scope="scope"> <el-switch v-model="scope.ro

2021-05-07 20:07:15 124

原创 获取用户列表数据并渲染

获取用户列表数据创建用户列表组件时就获取数据,在create中定义getUserList,method中实现方法,获取用户列表的参数对象在data中定义,将获取的数据保存在data定义的userlist和total中export default { // 当前组件私有数据 data() { return { // 获取用户列表的参数对象 queryInfo: { query: "", pagenum: "1", pa

2021-05-07 17:17:43 351

原创 点击菜单项打开新的组件页面,并高亮显示菜单项

点击用户列表打开新的组件页面1.在components添加user文件夹下新建Users.vue组件2.在页面右侧主题区域展示User组件(1)在router.js中导入组件 import User from './components/user/Users.vue'(2)在home路由中新增一个子路由const router = new Router({ routes: [ { path: '/', redirect: '/login' }, { pa

2021-05-06 16:16:12 384

原创 菜单栏展开与折叠

菜单栏折叠与收起在页面菜单侧边栏上方加一个div。并添加点击事件 <div class="toggle-button" @click="toggleCollapse">|||</div>侧边栏菜单启用collapse属性,是否水平折叠收起菜单,collapse-transition取消折叠动画, <el-menu background-color="#333744" text-color="#fff"

2021-05-06 11:15:24 795

原创 菜单栏图表问题

菜单栏结构和数据是通过v-for循环实现的,但图表不能一致,解决办法如下:采用第三方自定义图标库1.在data中定义图表对象data() { return { // 左侧菜单数据 menulist: [], //前面125等key值是item.id,icondont是基类, iconobj: { 125: "iconfont icon-user", 103: "iconfont icon-tijikongjian

2021-04-29 12:00:14 71

原创 获取后台数据,并渲染

获取后台数据,以菜单数据为例页面刚加载就获取数据,在script中定义生命周期函数 created() { this.getMenuList(); },在script的methods中实现getMenuList方法sync getMenuList() { //请求menus路径并解构返回数据,重命名weires const { data: res } = await this.$http.get("menus"); if (res.meta.

2021-04-28 17:13:26 652

原创 axios请求拦截

通过axios请求拦截器添加token,保证拥有获取数据的权限对每次请求进预处理// 请求拦截器,对请求进行预处理,获取数据权限axios.interceptors.request.use(config => { // 添加Authorization属性,值等于token值 config.headers.Authorization = window.sessionStorage.getItem('token') return config})...

2021-04-28 16:53:30 62

原创 退出功能实现原理

##vue项目退出功能实现原理基于 token的方式实现退出比较简单,只需要销毁本地的 token即可。这样,后续的请求就不会携带token,必须重新登录生成一个新的 token,之后才可以访问页面 // 清空token window.sessionStorage.clear(); //跳转到登录页 this.$router.push("/login");...

2021-04-28 12:28:36 374

原创 路由导航守卫控制访问权限

路由导航守卫控制访问权限如果用户没有登录,但是直接通过URL访问特定页面,需要重新导航到登录页面。// 挂载路由导航守卫router.beforeEach((to, from, next) => { // to 将要访问的路径 // from 代表从哪个路径跳转而来 // next是一个函数 next()放行 next('login')强制跳转 if (to.path === '/login') return next(); // 获取token

2021-04-28 12:19:48 71

原创 新建vue组件

新建vue组件1.在component下新建vue组件2.在router.js文件中导入并配置路径如Home组件:import Home from './components/Home.vue'export default new Router({ routes: [ { path: '/home', component: Home } ]})

2021-04-28 12:01:19 60

原创 表单校验规则

表单校验规则先在相应表单绑定rules属性,值是验证规则对象:rules=“loginFormRules”在data中定义验证规则对象export default { data() { return { // 这是登录表单的验证规则对象 loginFormRules: { // 验证用户名是否合法 username: [ { required: true, message: "请输入用户名名称", trigge

2021-04-27 19:08:07 214 1

原创 vue项目引入element-ui

vue项目引入element-ui在项目目录文件夹下运行 npm run dev ,如果没有问题,则进行安装ElementUI安装ElementUI:cnpm install element-ui -s在main.js引入import ElementUI from 'element-ui'import 'element-ui/lib/theme-chalk/index.css';Vue.use(ElementUI);重新启动项目使用...

2021-04-27 17:18:15 90

原创 JS多行输入输出

JS获取单行,多行输入// 单行var line = readline(); //获得的是一个字符串//如果需要对其进行处理,比如 “1 2 3 4 5”,我们想以数组形式获取每个数字var arr = line.split(" "); // 数组内元素为字符串,eg: arr[0]="1"// 多行// 如果每一行的操作相同while(line = readline()){ // 代码}/*如果每一行操作不同eg: 第一行给数组长度 第二行给用空格分开的字符串那就每一次按照单

2020-09-22 16:11:29 2802

原创 JS常用小方法

小数取整 1.234 | 0 ~~1.234 1.234 >> 0字符串转number +'123'字符串转数组 method 1: [...'string'] method 2: Array.from('string')new Date转时间戳+new Date()数组/多维数组转为逗号分隔字符串(可用于多维数组转一维) ""+[1, 2 , 3, 3, [2, 3, 4]]交换a,b的值 var a=1; var b=2; [a,

2020-09-17 17:05:58 72

原创 React新建项目

首先确保安装了node环境新建项目npm install -g create-react-appcreate-react-app reactApp //项目名新建成功vscode目录如下:打开终端,启动项目

2020-09-10 17:56:21 89

原创 前端面试题总结

● 说一下http和httpshttps的SSL加密是在传输层实现的。(1)http和https的基本概念http: 超文本传输协议,是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。https: 是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。https协议的主要作用是:建

2020-09-10 17:10:46 269

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除