自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 问答 (1)
  • 收藏
  • 关注

原创 【部署】Docker + Github Aciton 自动化部署 vue 项目

在网上搜索了很多资料,都是不成功的,,或者说都是打包好再推送过去。那么我的思路是代码直接推到Github,让它1、自动帮我打包成镜像,推到我的远端仓库;2、连接我的服务器,拉取镜像更新,生成容器;

2022-10-24 00:51:43 1094 1

原创 【web-music】vue3 网易云音乐

一个网易云音乐 与 YouTube Music 的在线音乐网页旨在学习 vue3+vite+pinia+ts+element-plus,欢迎大家一起交流网易云音乐及技术。

2022-08-28 21:35:17 462

原创 [md-loader]使用md来编写vue组件库文档

- 当前项目公共组件比较多,需要一个文档来描述- 希望轻量化,没有额外资源部署一个文档项目,即内嵌在开发项目中

2022-08-28 17:17:45 1671

原创 【web-music】Vue3.x+Vite+TypeScript Eslint+Prettier代码格式化

网上的配置五花八门,大部分是因为版本号不兼容导致不成功的。所以最近自己实践完成了一套可行的配置,并且附上版本号。

2022-08-17 16:56:00 487

原创 【web-music】使用JS实现博客搜索关键字高亮

【web-music】使用JS实现博客搜索关键字高亮。

2022-08-08 00:42:29 80

原创 【web-music】vue3 开发遇到的问题

记录使用vue3遇到的一些问题,比较与vue2的差异。

2022-07-31 01:12:29 1082

原创 【web-music】vite 快速使用svg

vue2的时候使用的是字体图标,缺点就是比较单一。到了vue3,相信浏览器的性能起来,所以这里记录一下前往 https://www.iconfont.cn/,创建自己的项目,准备好需要的图标。然后点击下载每次都这么使用,比较麻烦,所以打算使用一个组件封装一下,并且全局注册。icon-svg.vue三、引入前端项目如果只需要 svg, 只需要引入iconfont.js即可放置的目录:public\font\iconfont.js然后在main.ts 注册一下main.ts总结最后就可以

2022-07-13 04:00:00 493

原创 【问题记录】vue2.7升级指南实践

vue2.7 出来了,可以以比较低的成本能够使用到vue3新特性。并且最近公司的项目也是使用着vue2.6 + Composition API。所以本着拥抱 vue3 的原则直接由 vue2.6 + Composition API 升级为 vue2.7,即去除 Composition API 。官方资料2.7.0首先肯定是删除 和 然后升级插件需要移除的插件这里可以使用vscode的正则替换/deep/(.*?){:deep($1){注意:对于类名换行的情况,需要手动处理下。尝试过了换行符,还是

2022-07-12 21:53:00 2306 1

原创 【web-music】记录ts+vue3中的ts语法问题

[ref].value 警告加一个判断即可或者使用 链判断运算符

2022-07-12 19:46:34 151

原创 【问题记录】vue部署后报错,Composition API语法失效

最近一直在使用 Vue2 + 开发项目。所以对于当看到 正式版的发布的时候,是开心的。Vue 2.7 从 Vue 3 向后移植了一些最重要的功能等等…,十分接近 但是第二天我的项目部署线上的时候,就突然一直报错。编译时没有报错,但是到了线上就报错,如也就是 语法失效了。定位了很久发现是vue2.6自动更新为2.7了,导致 无效。最后锁定版本号即可。去掉......

2022-07-06 21:33:40 2484 1

原创 【web-music】【Vue3.x+Vite+TypeScript+Router4+Pinia+Less+Element Plus】快速搭建

配置环境

2022-04-11 22:01:04 530

原创 【bpmn.js 使用总结】十、答疑

答疑 (持续更新)1 如何自定义 id如何将 id,例如 Task_1hcentk 改成自己想要的格式 ?先看看源码怎么写bpmn-js/lib/features/modeling/BpmnFactory.jsBpmnFactory.prototype._ensureId = function(element) { // generate semantic ids for elements // bpmn:SequenceFlow -> SequenceFlow_ID var p

2021-06-20 11:58:01 3289 20

原创 el-transfer 数据量大时使用虚拟列表

前言el-transfer 加载几千个数据已经卡得不行了,毕竟页面上存在了 几千多份 dom。由于时间紧急,打算直接拿源码出来修改。开始为了代码不混淆,这里使用 mixins。有三个文件virtual-list-mixins.jsexport default { computed: { contentHeight () { // 计算滚动条高度 return this.data.length * this.itemHeight } },

2021-04-22 23:33:51 2844 1

原创 快来装扮你的新标签页

前言写代码的日子里,总希望有点不一样。浏览器是我的一个好朋友,我希望它能够变得漂漂亮亮的。以 Google Chrome 为例。以下是我推荐的 浏览器扩展。几枝几枝在新标签页上展示中国传统色的层叠波浪动画效果搭配经典诗词。尤其喜欢的是唯美的诗句配上意境的背景,我相信一定还有更多喜爱古诗词的程序猿~下载地址:Chrome Web Store 地址 | Firefox Add-ons 地址代码仓库:https://github.com/unicar9/jizhiMinimo优雅,简化

2021-04-01 22:22:56 117

原创 【bpmn.js 使用总结】九、 Viewer 添加缩放、改色、拖动

为 Viewer 添加一些功能也许你只是需要只读,但是希望保留放大缩小以及调整位置。使用 NavigatedViewer 和 Modeler 显得不是那么灵活,因为需要禁掉多余的功能。new BpmnModeler({ additionalModules: [ { // 禁用左侧默认工具栏 paletteProvider: ['value', '']// 去不干净,还是默认生成空白 dom // // 禁用滚轮滚动 zoomScroll: [

2021-02-03 22:18:14 9367 7

原创 部署网易云音乐API - Nginx反向代理Nodejs

不管是看博客还是写博客,听音乐必然是不可少的一个节奏但是吧,之前的网易云 API 是用的别人的这几天突然就用不了,所以就打算自己部署一个听首歌测试一下,快过年啦~ 三十的鞭炮太响啦,提前祝朋友们新年快乐~送上我非常喜欢的两首歌, 两首歌都非常嗨 ❤在 CSDN 没有音乐,只能来我家听了~???? ლ(❛◡❛✿)ლ 上车开始准备首先得有个服务器,然后搭上 Nginx,为了方便点,我绑定了域名 http://cloud-music.pengliang.online/将 网易云API

2021-01-28 21:02:22 2302 6

原创 JavaScript new 理解

前言JavaScript 的 new 运算符干了啥?自己写一遍加深一下。用法function Car(make, model, year) { this.make = make; this.model = model; this.year = year; return { abc: "js", };}const car1 = new Car("Eagle", "Talon TSi", 1993);console.log(car1.abc);// exp

2021-01-21 21:00:34 123

原创 使用 class 实现 Promise

说明使用 class动手实现了一遍 Promise模仿: https://github.com/ydiguo/Promise (内含大量注释????)使用 promises-aplus-tests 检验通过仓库: MyPromise代码const PENDING_STATE = "pending";const FULFILLED_STATE = "fulfilled";const REJECTED_STATE = "rejected";const isFunction = functi

2021-01-19 23:02:12 682

原创 【bpmn.js 使用总结】八、自定义规则

自定义 Rules为 Bpmn 加上新的规则约束。开始1. 创建相关文件老规矩,准备好文件。这里直接从 bpmn-js-examples 中的custom-modeling-rules建立自定义规则的相关文件,结构如下| -- rules |-- CustomRules.js |-- index.js2. 修改index.jsimport CustomRules from './CustomRules'export default { __init__: ['cu

2020-11-20 22:51:17 3974 1

原创 【bpmn.js 使用总结】七、指定 Palette 容器

指定 Palette 容器开始之前需要了解一下自定义 Palette开始去除默认工具栏 // 去除默认工具栏 const modules = BpmnModeler.prototype._modules const index = modules.findIndex(it => it.paletteProvider) modules.splice(index, 1) this.bpmnModeler = new BpmnModeler({.

2020-11-07 20:27:25 1743 1

原创 【2020-11-07】使用 vue 模仿 camunda 的 BPMN 部分

使用 vue 模仿 camunda 的 BPMN 部分点击预览网页截图其中实现了 多种对齐方式、设置颜色、上传下载图片、文件、小地图、属性面板等 等功能代码地址点击这里

2020-11-07 20:25:08 1411

原创 【bpmn.js 使用总结】六、自定义线条颜色

设置颜色官方提供了 4 中方法官方 demo我这里推荐两种一、官方 APIconst modeling = this.modeler.get('modeling')modeling.setColor(element, { fill: 'blue', stroke: 'red'})二、通过 css 自定义连线和箭头的颜色NavigatedViewer、Viewer、Modeler三种模式都适用配合自定义渲染加上不同的类名,能够达到每条线有不一样的颜色或者遍历链路获取节点的颜色,

2020-11-07 20:15:59 5728 5

原创 【2020-11-03】文件流乱码、axios responseType 不生效

事件后端接口返回的二进制流,竟然乱码?一开始,我是以为本来就长这样,然后我就熟练的 new Blob()…总说我文件损坏,好吧,是我比较菜,方法可能不正确各种百度转 blob,生成 URL当然还是失败告终捣鼓了大半天,axios 配置也看了一遍,可是咋就是不行呢。。this.axios.get(url, null, {responseType: 'blob'})大半天后找到同样遇到这个问题已经解决的大佬, mockjs 真是藏得好深啊~~mock模块会影响原生的ajax请求,使得服

2020-11-03 23:14:17 1319 2

原创 【2020-10-31】vue项目中使用pdf.js预览pdf文件

起因项目中需要前端来解析.zip\ .image\ .pdf 并预览图像,并且需要在图形上绘制。所以我的整体解决方法是,在解析生成的图形的基础上,覆盖一层 Canvas。zip 使用了 jszip 直接将其中的图片取出来image 可以直接使用 <img />展示没问题pdf : 本来上面两步使用 <img />可以解决了,但是 pdf 不能够使用呀,在网上查找了资料,最后打算将 pdf 转换成 canvas ,使用的是 pdf,js开始先看看最终完成效果...

2020-10-31 16:46:06 1822 1

原创 【bpmn.js 使用总结】五、自定义内容面板 contextPad

自定义 contextPad在 自定义 contextPad 的基础上继续修改案例代码在这里取:customContextPad开始自定义 contextPad 和 自定义 Palette 步骤差不多1. 创建相关文件建立自定义内容面板的相关文件,结构如下| -- contextPad |-- CustomContextPad.js |-- index.js这里比较方便直接去官方的 Demo 中取代码bpmn-js-example-custom-elements接下来

2020-10-19 21:44:18 6722

原创 【bpmn.js 使用总结】四、自定义渲染 Renderer

自定义 Renderer在 [自定义 Palette] 的基础上继续修改案例代码在这里取:customRenderer开始由于画布中的图形为 SVG,不像 Palette 是使用 HTML,所以需要学习 SVG 的基础知识并且需要用到 BPMN 提供的一个 SVG 库 tiny-svg1. 创建相关文件建立自定义渲染的相关文件,结构如下| -- renderer |-- CustomRenderer.js |-- index.js这里比较方便直接去官方的 Demo 中取

2020-10-19 21:43:53 4021

原创 【bpmn.js 使用总结】三、自定义工具栏 Palette

自定义 Palette[了解 BPMN 内部】后,对一些模块以及它们之间的配合应该有了一定的概念,下面开始动手尝试修改一下 palette 工具栏案例代码在这里取:customPalette开始你可以实现通过配置生成工具栏自定义工具栏样式、布局可指定工具栏容器为了理解更简单自定义工具栏样式、布局 (非必须,后续实现)可指定工具栏容器(非必须,后续实现)注意:标记 ???? 的地方为重点1. 创建相关文件建立自定义工具栏的相关文件,结构如下| -- palette

2020-10-19 21:43:17 9984 4

原创 【bpmn.js 使用总结】二、了解 bpmn-js 内部

介绍bpmn-js 是 BPMN 2.0 呈现工具包和 Web 建模器。它是用 JavaScript 编写的,将 BPMN 2.0 图表嵌入到现代浏览器中,并且不需要服务器后端。这样可以轻松将其嵌入到任何 Web 应用程序中。该库以既可以查看器又可以是 Web 建模器的方式构建。使用 viewer 将 BPMN 2.0 嵌入到您的应用程序中,并用您的数据丰富它。使用 modeler 在应用程序内部创建 BPMN 2.0 图表。了解内部之前先了解下外观:下面介绍库内部的一些见解,即有助于其高度模块化

2020-10-19 21:42:41 16447

原创 【bpmn.js 使用总结】一、基础使用

基础使用Viewer BPMN 图表查看器NavigatedViewer 包含鼠标导航工具的图表查看器Modeler BPMN 图表建模器Viewer 功能最简单,仅用来展示NavigatedViewer 在 Viewer 上扩展了导航和缩放功能Modeler 融合了 Viewer 和 NavigatedViewer,并拥有工具栏、属性面板等,实现建模能力快速上手(Vue)安装依赖npm install bpmn-js -Shtml<div ref="canvas" cl

2020-10-19 21:41:46 5017 1

原创 vue 在样式中使用背景图片

vue 在样式中使用背景图片代码如下:width: 100%;height: 100vh;background: url('~@/assets/404.png') no-repeat center;~ 为 Less 的转义字符补充vue 常用的图片引入直接在 html 中使用 <img src="@/assets/404.png" alt="">动态 src当路径的文件名需要拼接变量的时候,可使用 require() 引入在 template 的:src 或者

2020-10-08 16:13:53 2631

原创 vscode中设置vue代码片段

vue 碎片{ "Print to console": { "prefix": "vue", "body": [ "<template>", " <div class=\"${1}\">\n", " </div>", "</template>\n", "<script>", "export default {", " data () {"

2020-10-07 15:06:50 510

原创 解决 el-table 自定义表头视图不更新

使用 slot="header",导致自定义表头视图不更新v-slot 指令自 Vue 2.6.0 起被引入,提供更好的支持 slot 和 slot-scope attribute 的 API 替代方案。v-slot 完整的由来参见这份 RFC。在接下来所有的 2.x 版本中 slot 和 slot-scope attribute 仍会被支持,但已经被官方废弃且不会出现在 Vue 3 中。在这之前我一般使用 v-if 解决这个问题,但是 v-if 的副作用????‍♂️,虽然知道 slot="he

2020-09-26 11:55:14 3056 3

原创 hexo 超简单部署

前言Hexo 本身提供了很多快速方便的一键部署功能,让您只需一条命令就能将网站部署到服务器上。配置文件: _config.yml但是在配置文件中使用 sftp 发布到服务器,需要一些明文信息。然后不希望将这些信息暴露出去。在网上搜索了好大半天,发现文章篇幅都比较长 其实是我看不懂 ???? 所以自己尝试了两个较简单的方法。大前提是使用 sftp-sync-deploy 这个包来将自己的文件发布上去,hexo 部署是使用hexo-deployer-sftp (核心是 sftp-sync-deploy

2020-09-14 20:52:03 1551

原创 Github -让交友变得更简单♂

文章同步到个人博客,欢迎指导前言github 毫无疑问是一个大型同性交友网站,一般来说,github 个人主页无非是这样:信息量完全不够,有木有所以自己改造了一下自己的个人主页效果演示Github教程建立 github 同名仓库统计卡片 github-readme-stats,统计语言、github 提交等信息使用 action 定时运行 awesome-pinned-gists,统计 Steam 、网易云、Bilibili 、 Twitter 、YouTube 等信息建立.

2020-09-12 23:15:50 759 2

原创 Elementui Popover点击拖动滚动条关闭

场景在非固定列表格中使用 Popover 弹出框,并且 el-popover中还有 Select 选择器 和 TimePicker 时间选择器 等 Popover 弹出框,正常点击页面的时候会同时消失,但是拖动点击非固定列的滚动条的时候不消失且不跟随表头移动,因为 Popover 默认是以 body 为基准。解决方法使用监听与 Popover无关的滚动条事件,模拟鼠标事件关闭它。document.body.click()document.dispatchEvent(new CustomEvent(

2020-06-16 22:50:34 2778 1

原创 【 vue-next-demo】尝鲜 vue 3.0

最近好奇 vue-next 新版本的 api,自己动手实现了下。

2020-06-02 23:26:50 352

原创 Checkbox 多选框 数据为对象

Checkbox 多选框 数据为对象Checkbox 多选框显示和绑定的值默认是一样的,源数据一般是一维数组今天使用 Checkbox 多选框 的时候需要绑定 ID, 显示的为国际化文字,使用的源数据是对象类型使用插槽即可, api 并为提及,后来发现在例子中有体现,特地记录一下。 const cityOptions = [ {id: 1, name: '上海'}, {id: 2, name: '北京'}, {id: 3, name: '深圳'}, {id: 4, name: '广州'}

2020-05-25 23:39:23 1419

原创 ElementUI滚动视图(类似走马灯)

描述项目中使用到了 NavMenu 导航菜单 ,当菜单过长时会发生不雅观的事情(换行)正好 Tabs 标签页 能够检测宽度不够时会出现一个支持内容左右滚动的容器于是乎,我将其抽取出来作为 NavMenu 导航菜单 的外部容器效果当宽度不够时,是滚动而不是换行;当宽度足够时,左右箭头隐藏无多余元素;使用我已经将此封装成组件。slot: 插槽 、props width:外层宽度限制(默认100%);插槽要求有固定宽度如果使用了 NavMenu 导航菜单,由于它是使用 ul li 元素通过

2020-05-18 22:42:48 2713

原创 求助!关于vue-photo-preview异步图片预览不正常问题

Vue中使用vue-photo-preview异步出现预览不正常问题异步图片一点击完整的出现一秒,然后马上变黑了,如下图:一秒后:接着再点击一次,效果如下:点第三下才恢复正常:求助各位大神,是什么原因怎么解决呀!...

2019-04-04 23:22:48 2144

空空如也

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

TA关注的人

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