自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 VUE 获取PDF文档流直接打印

刚开始通过api获取后端给的PDF地址,创建一个隐藏的iframe标签src设置为pdf地址;前端通过获取隐藏的iframe标签的id来实现打印指定内容;存在iframe跨域问题,不能直接调起print()方法,取消iframe隐藏虽然能看到加载出pdf,但多了点击打印按钮的步骤。api改为获取pdf文档流,前端将文档流转为blob地址,放到js创建的隐藏iframe标签内;再执行print()方法。前端点击按钮直接调起打印对应pdf文档。

2023-03-13 17:30:40 2668 4

原创 vue-pdf实现pdf文件在线预览

1. 前言PDF文件在线预览的功能相信大家都是有遇到过的, 但在我平时的项目中, 公司提供了相应的插件, 但是在h5等其他项目中, 我们还是只能靠自己呀! 今天就大概说一下 vue-pdf 这个组件, 大部分的需求还是可以满足的2. 安装npm install --save vue-pdf3. pdf 页面显示3.1 code<template> <div> <pdf ref="pdf" :sr

2022-03-11 17:32:22 3676

原创 uniapp vue 添加水印模板

在默认文件先新建components文件夹 创建vue 文件 ‘wm-watermark.vue’<template> <!-- 水印 --> <view class="watermark"> <block v-for="(item,index) in num" :key="index"> <view class="watermark-text" v-if="text != ''" :style="{opacity:opacity}"

2022-01-24 12:00:35 928 6

原创 git合并某个分支上的某次提交到指定的分支上

1.查看需要合并的本次提交的commitIdgit log2.复制commitId3.切换需要合并到的分支git checkout branch4.合并到本分支git cherry-pick commitId5.推送本地合并到的更新到远程仓库git push

2021-10-14 15:16:16 1448 5

原创 小程序区分体验版(测试环境)和发布线上(生产环境)

let baseUrl, wendaUrl;let envVersion = wx.getAccountInfoSync().miniProgram.envVersion;switch (envVersion) { case "develop": // 开发版 baseUrl = "https://testxxx.com"; //测试环境 break; case "trial": // 体验版 baseUrl = "https://testxxx.com"; //测试环.

2021-10-11 11:48:56 1564

原创 element的时间日期范围组件,后台获取数据赋值后无法改变,change事件也不触发解决方法

背景:在使用日期范围组件的时候,从后台获取的时间赋值上去,再进行时间修改时,时间无法修改,而且change时间也无法触发解决方法:使用set赋值原代码:this.$api.findInfo(id) .then((res) => { // 处理起始时间 this.getForms.entrantFamilies.forEach(item => { let list

2021-09-20 11:14:41 906 2

原创 小程序设置时间缓存限制,一段时候后自动清理缓存

在app.js文件里的 onshow(生命周期回调——监听小程序启动或切前台 )进行设置App({ onShow({

2021-09-09 15:25:24 1909

原创 vue项目,通过axios请求下载pdf文件

axios({ method: "post",//请求方式 url: '/jishi/jishi.daochu', responseType: 'blob', data: data //需要传的字段 }).then((res) => { let blob = new Blob([res.data], { type: `application/pdf` //wor...

2021-09-08 11:20:21 1227

原创 22222

前端开发主要学习什么 HTML超文本标记性语言:尽量掌握尽可能多的标记或标记对。 CSS:学好CSS是网页外观的重要一点,CSS可以帮助把网页外观做得更加美观。 JavaScript:学习JavaScript的基本语法,以及如何使用JavaScript编程将会提高开发人员的个人技能。 前端开发需要掌握哪些编程语言? (答案见下题) 前端开发与后端开发的区别? 前端开发人员精通JS能熟练应用JQuery,懂CSS能熟练运用这些知识,进行交互效果的开..

2021-07-22 15:10:07 189 1

原创 关于elementUI的树形表格table报错RangeErr Maximum call stack size exceeded

1.报错情景:使用的elementUI表格里面的树形数据与懒加载2. 功能是 在表格中如果存在二级列表,点击箭头之后请求后台接口,展开显示二级列表的内容。点击箭头拿到了数据,但是后台会报错如下图,且数据展示不出来3.解决办法:上网查了下,意思是堆栈溢出,原因出在table列表绑定的row-key上,因为row-key绑定的参数必须是唯一的,我绑定的是id。但是后台返回的列表中一级列表中的id和二级列表中的第二条数据的id是一样的,所以才报出了这样的错误。表格中需要绑定row.

2021-07-07 16:07:20 3798

原创 解决element建议搜索框fetch-suggestions无法显示内容解决方法

情景:引用elementUI组件里面的建议搜索框时,下拉框显示内容空白。原因:可能是value值设置的问题,代码如下html代码:<el-form-item label="一级客户经理" prop="userNumber1Name"> <el-autocomplete v-model="formlist.userNumber1Name" :fetch-suggestions="querySearchAsync"

2021-07-07 14:29:29 6703

原创 vue中引入阿里矢量图标,并在element组件中使用

一 选择项目中需要的图标打开阿里矢量图标网站选择你想要的图标,添加到购物车添加到项目中二 引入到本地项目中本地下载使用线上链接

2021-06-22 15:34:09 499

原创 git commit 后,提交记录消失不见

今天忙碌了一上午,改了十几二十页的 UI样式,提交后竟然突然不见了,还好经过百度现在已解决。下面是解决办法,可以进行参考。git commit 后,提交记录会消失不见的原因可能是:git只git commit了,没有push到远程分支,切换到其他分支时丢失。而且看不到提交记录,和找不到原来的分支。那应该怎么样找回来呢?1. 找到你commit后的记录输入 git reflog 命令其中找到 你想要的那条记录,,记住前面的hash值。2.创建新的分支并切换到当前新分支gi

2021-06-22 14:59:09 9339 1

原创 v-model.trim的作用

1、v-model 的修饰符,一般用于控制数据同步的时机2、.trim 自动过滤输入内容最开始 和 最后的 空格,中间的会保留一个空格,多的会被过滤掉

2021-06-11 09:30:10 1644 1

原创 解决 Element表格固定列时,滚动条被遮挡的问题

// 解决滚动条被遮挡的问题// ------------------ start ------------ ///deep/ .el-table { .el-table__fixed { height: auto !important; // 此处的important表示优先于element.style bottom: 13px; // 改为自动高度后,设置与父容器的底部距离,则高度会动态改变 }}/deep/ .el-table__body-wrapper { z-.

2021-05-24 17:34:10 2360 2

原创 如何查看git账号以及如何切换登录git账号

查看git账号:git config user.namegit config user.email如何切换git账号git config --global user.name "账号名"git config --global user.email "账号"

2021-04-29 09:49:08 6106

原创 手把手教你搭建前端开发环境

一 安装nodejsnodejs是一个JavaScript运行环境(runtime)下载地址为:https://nodejs.org/en/ 2.检查是否安装成功npm:是nodejs的包管理器,用于node插件管理(包括安装,卸载,管理依赖等)cnpm:是一个完整npmjs.org镜像,可以用此代替官方版本(只读),同步频率目前为10分钟一次以保证尽量与官方服务同步3.为了提高我们的效率,可以使用淘宝镜像:http://npm.taobao.org/输入:np...

2021-04-26 18:17:41 1270

原创 JS事件循环机制(微任务和宏任务)

1 event loop 是什么event loop(事件循环/事件轮询)JS是单线程运行的 异步要基于回调来实现 event loop 就是异步回调的实现原理JS如何执行?从前到后,一行一行执行 如果某一行执行报错,则停止下面代码的执行 先把同步代码执行完,再执行异步2 event loop 运行过程过程1:同步代码,一行一行放在Call Stack 执行 遇到异步,会先 “记录” 下,放到 Web APIS, 等待时机(定时,网络请求等) 时机到了,就移动到 Ca..

2021-04-22 16:43:29 513

原创 小程序常见面试题

1.小程序生命周期及页面生命周期小程序的生命周期函数式在 App.js 里面调用的:onLaunch :监听小程序初始化(全局只触发一次) onShow: 监听小程序显示 onHide: 监听小程序隐藏 onError: 错误监听函数 onPageNotFound: 页面不存在监听函数 各页面生命周期函数onLoad:页面加载,调一次 onShow:页面显示,每次打开页面都调用 onReady:初次渲染完成,调一次 onHide:页面隐藏,当navi...

2021-04-20 16:35:50 143

原创 Promise的作用及用法

1.promise作用:promise:解决异步回调的问题2.目的:创建异步对象,当异步对象中的异步操作执行完成之后,再执行想要执行的东西。resolve表示将状态变成成功完成,reject表示将状态变成失败完成 当resolve方法执行完成之后,再执行then方法 let p = new Promise((resolve, reject) => { setTimeout(() => { console.log('...

2021-04-19 16:43:22 7011 1

原创 实现文本在标签内平均分布的css样式

有一个容器,添加了一段文字,想让它们平均分布达到标签flex布局的效果,而不是靠左、靠右或者居中显示开始效果:添加样式:text-align: justify;text-align-last: justify;最终效果:...

2021-04-08 14:00:18 835

原创 当POST请求,参数body类型和query类型两种同时存在时的请求方案

需求:有一个接口是,post请求,请求头 content-Type:"application/json",请求参数类型有body和query两种。1.首先封装API接口:export async function addRoom(query, data){ return await axios({ url:'/.....', method:"post", params: query, paramsSerializer: fun

2021-04-02 10:38:13 6738

原创 vue-element-admin学习总结(一)

一 前言1.简介这是一个极简的vueadmin管理后台。它只包含了ElementUI&axios&iconfont&permissioncontrol&lint,这些搭建后台必要的东西。2.项目地址集成方案:vue-element-admin 基础模板:vue-admin-template 桌面终端:electron-vue-admin Typescript 版:vue-typescript-admin-temp...

2021-03-19 16:40:43 1391

原创 找不到模块 “path“ 或其相对应的类型声明

在config.js 或者 config.ts 里面直接添加importpathfrom"path";有可能会报这个错误提示:error:找不到模块 'path' 或其相对应的类型声明解决方法:根据你前面的配置进行修改:import path from "path"; //找不到模块 'path' 或其相对应的类型声明export default defineConfig({ .............. resolve:{ alias:{ ...

2021-03-17 11:07:04 14961 1

原创 使用yarn代替npm安装依赖包

安装yarnnpm install -g yarn react-native-cli安装完yarn后同理也要设置镜像源:yarnconfigsetregistryhttps://registry.npm.taobao.org--globalyarnconfigsetdisturlhttps://npm.taobao.org/dist--global安装完yarn之后就可以用yarn代替npm了,例如用yarn代替npminstall命令,用yarnad...

2021-03-17 10:09:18 986

原创 什么是JavaScript异步编程?什么是JavaScript Promise?

目录JavaScript 异步编程同步的概念什么时候用异步编程回调函数JavaScript Promise构造 PromisePromise 的使用Promise 函数回答常见的问题:Async AwaitJavaScript 异步编程同步的概念异步(Asyncchronous,async)是与同步(Synchronous,sync)相对的概念。在我们学习的传统单线程编程中,程序的运行是同步的(同步不意味着所有步骤同时运行,而是指步骤在一个控制流...

2021-03-16 15:45:19 133

原创 TypeScript 轻松入门(一)

一 什么是Typescript?JavaScript概述:JavaScript(JS)是一种运行在客户端(比如:浏览器)中的编程语言。当应用于浏览器时,为网站提供动态交互特性,让网页“动”起来。 JavaScript 的运行环境:1.浏览器 2. node.js Node.js让JavaScript 摆脱了浏览器的束缚,可以实现服务器/桌面端编程等。 其他:微信小程序,微信小游戏等等。TypeScript概述:TypeScript(简称 :TS) 是JavaScript的超集(JS有的T.

2021-02-19 16:12:16 142 1

原创 vuex基本使用和辅助函数-(mapState,mapMutations,mapActions,mapGetters)的使用

一 vuex基础-statestate是放置所有公共状态的属性,如果你有一个公共状态数据,你只需要定义在state对象中定义state//初始化vuex对象const store = new Vuex.Store({ state:{ //管理数据 count: 0 }})如何在组件中获取count?1. 原始形式-插值表达式组件中可以使用this.$store获取到vuex中的store对象实例,可通过state属性获取count,如.

2021-02-07 15:54:30 1618 1

原创 微信小程序-setData()方法 的使用和注意事项(同步和异步)

1. setData的使用Page.prototype.setData(Object data, Function callback)setData函数用于将数据从逻辑层发送到视图层(异步),同时改变对应的this.data的值(同步)。Object以key: value的形式表示,将this.data中的key对应的值改变成value。其中key可以以数据路径的形式给出,支持改变数组中的某一项或对象的某个属性,如array[2].message,a.b.c....

2021-02-03 15:05:01 8246 3

原创 git将某个分支的提交合并到另一个分支

例如:要将A分支的一个commit合并到B分支:首先切换到A分支:git checkout Agit log找出要合并的commit ID :例如 commit 075cc9a4xxxxxxxxx8077ced2f01efe然后切换到B分支git checkout Bgit cherry-pickcommit 075cc9a4xxxxxxxxx8077ced2f01efe这样就讲A分支的某次提交 合并到了B分支了...

2021-02-01 10:47:43 1101

原创 微信小程序Swiper无缝轮播完美衔接(图片最后一张和第一张可以衔接滑动)

微信小程序如何在设置轮播图时滑动可以完美衔接(图片最后一张和第一张可以衔接滑动)<swiper class="swiper-item circular="true"> <swiper-item> <image src=""></image> </swiper-item></swiper>只需要在swiper组件中,加上circular="true" 就可以啦 !...

2021-01-28 15:06:06 3622

原创 Javascript防抖与节流之间的区别和应用(微信小程序)

节流概念(Throttle)按照设定的时间固定执行bai一次函数,比如200ms一次。注意:固定就是你在mousemove过程中,执行这个节流函数,它一定是200ms(你设定的定时器延迟时间)内执行一次。没到200ms,一定会返回,没有执行回调函数的。主要应用场景有:scroll、touchmove防抖概念(Debounce)抖动停止后的时间超过设定的时间时执行一次函数。注意:这里的抖动停止表示你停止了触发这个函数,从这个时间点开始计算,当间隔时间等于你设定时间,才会执行里面的回调函数。如果

2021-01-28 11:06:43 256

原创 qs.js更好的处理url参数-url参数转化

一.什么是qs.js库qs是一个url参数转化(parse和stringify)的js库。二.使用1.qs.parseqs.parse方法可以把一段格式化的字符串转换为对象格式,比如let url = "http://item.taobao.com/item.html?a=1&b=2&c=3&d=&e";let data = qs.parse(url.split('?')[1]);console.log(data)// data的结果...

2021-01-27 15:05:21 2796

原创 Git本地从某个分支上创建新分支以及拉取远程分支到本地分支

场景:在某个git分支上新建一个分支去做你的项目,那么如何在原远程分支的基础上新建自己的分支呢?解决办法:git branch newBranch //新建本地分支git checkout newBranch //本地切换到自己的分支git pull origin xxxxBranch //从本地新建的分支同步到服务器git push origin newBranch //将本地新建的分支同步到服务器git branch --set-upstream-...

2021-01-22 16:38:56 1512

原创 微信小程序入门

环境准备小程序目录结构小程序配置文件模板语法小程序事件绑定页面图层 wxss组件演示

2021-01-12 15:44:53 202

原创 小程序-云开发:云开发是什么?

大多是开发者在开发应用时和部署服务时,无论是选择公有云还是自建数据中心,都需要提前考虑服务器,存储和数据库等需求,并且会花费时间精力在部署应用,依赖上。而通过【小程序-云开发】,开发者可以开发微信小程序,小游戏,无需搭建服务器,即可使用云端能力,实现小程序的快速上线和跌代。【小程序-云开发】将以服务的方式为开发者提供如云函数,数据库,存储管理等所需功能,大大降低了小程序的开发门槛,仅需通过【小程序-云开发】提供的接口,就能实现因缺乏后端知识而无法实现的需求。那么什么是云开发呢?云开发为开发者提供

2021-01-07 09:47:16 5354

原创 2021年 前端最新常见面试题

一 浏览器网络部分1.做过哪些安全处理?2.浏览器的存储类型?1.sessionStroage2.localStroage3.cookie3.常见的状态码二 Javascript部分1.数组去重,排序,替换,求出现次数最多的字母,——实现原理2.原型链3.闭包4.ES6新特性5.DOM操作,插入,移除,添加到最后,以及通过父元素控制子元素6.map 和 forEach 的区别,以及forEach和for的区别7.什么是深拷贝什么是浅拷贝..

2021-01-05 20:54:34 1158

原创 git--提交规范前缀

用于说明commit的类别feat: 新功能(feature)fix: 修补bugdocs: 文档(documentation)style: 格式(不影响代码运行的变动)refactor: 重构(即不是新增功能,也不是修改bug的代码变动)chore: 构建过程或辅助工具的变动revert: 撤销,版本回退perf: 性能优化test:测试improvement: 改进...

2021-01-05 14:53:05 2448

原创 项目开发中的dev, test, prod , staging 环境是什么意思

软件应用开发的经典模型有这样几个环境:开发环境(development)、集成环境(integration)、测试环境(testing)、QA验证,模拟环境(staging)、生产环境(production)。开发环境(dev):开发环境是程序猿们专门用于开发的服务器,配置可以比较随意,为了开发调试方便,一般打开全部错误报告。测试环境 (test):一般是克隆一份生产环境的配置,一个程序在测试环境工作不正常,那么肯定不能把它发布到生产机上。生产环境(prod):是值正式提供对外服务的,一般会关掉

2021-01-03 07:27:39 43342

原创 GitLab中配置SSH key

一.概述很多公司现在git作为代码版本控制工具,然后自己搭建私有的gitlab来管理代码,我们在clone代码的时候可以选择http协议,当然我们也可以使用ssh协议来拉取代码。为什么GitLab需要SSH Key呢?因为Git Lab需要识别出你推送的提交确实是你推送的,而不是别热冒充的。而GitLab只要知道了你的公钥,就可以确认只有你自己才能推送。ssh形式要弄生成配置ssh密钥,有本地Windows电脑生成配置的,有在服务器Git命令生成配置的。当然,GitLab允许你添加多个Key。假

2021-01-02 08:24:39 2313 3

空空如也

空空如也

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

TA关注的人

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