自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (3)
  • 收藏
  • 关注

原创 记录画布库

fabric

2023-02-21 17:37:26 56

原创 记录 JAVA学习BUG--mybatis连接数据库报错

serverTimezone=GMT%2B8。

2022-07-26 15:30:19 307

原创 html 转 pdf 文件 并且上传

html 转 pdf 文件 并且上传export const dataURItoBlob= function(dataURI) { // convert base64/URLEncoded data component to raw binary data held in a string var byteString; if (dataURI.split(',')[0].indexOf('base64') >= 0) b..

2021-12-23 11:26:09 1292 1

原创 基于element ui 和vue事件总线封装dialog函数

基于element ui 和vue事件总线封装dialog函数第一步: 创建子类并构建dialog函数在dialog.vue中// dialog.vue<template> <el-dialog :title="title" :visible.sync="dialogFormVisible" v-if="dialogFormVisible"> <component :is="componentId"></component> &lt

2021-07-26 18:29:53 367

原创 v-model 使用总结

v-model 使用总结背景:在封装公司业务组件时遇到的v-model报错情况,解决之后的总结。第一种情况:// app.vue<template> <div id="app"> <cus-div v-model="cusValue" /> <p>app-content:{{ cusValue }}</p> </div></template><script>import

2021-07-25 19:48:16 220

原创 微信公众号本地调试方法

微信公众号本地调试方法一:背景公司的项目是微信授权回调到线上的域名,但是这样不方便本地调试。于是就尝试通过内网穿透的方法调试本地代码。二:准备工具我是用的工具是 ngrok,这个工具的使用方法很简单。它的简单使用教程如下:注册一个账号获取对应的token:运行下载之后解压出来的软件执行命令 ngrok authtoken 11u9mZpVKgdOC10UGUdQrffHqXX5_6sAzLg8Qvgi3z5HGwmcTc(自己的token值)4.启动对应的映射ngr

2021-06-20 10:59:11 3340

原创 HTML5读取本地文件 FileReader API接口

HTML5读取本地文件 FileReader API接口html的结构是: <label for="uoload">上传文件:</label> <input type="file" name="upload" id="upload"> <div id="show"> <img src="" alt="" id="showimg"> </div>选择到需要读取的文件:let

2021-01-06 13:35:27 320

原创 art-temolate模板引擎

模板引擎1.1模板引擎:让开发者以更加友好的方式拼接字符串,使代码更加清晰,更加易于维护。1.2:art-template 模板引擎使用art-template第三方模块。首先下载这个模npm install art-template入门示例:// 引入这个模块const template = require("art-template");const path = require("path");let views = path.join(__dirname,'views','01

2020-12-29 16:31:16 160

原创 javaScript 解构用法

解构:保持 = 左右两边相同数据类型,把复杂数据类型的值拆分// 解构let arr = [1, 2];let [a, b] = arr; //[a,b] =>[1,2]console.log(a,b);运输结果:1 2// 使用解构 直接进行两个值交换let a = 1, b = 10;[b, a] = [a, b]console.log(a,b);运输结果:10 1//在函数形参里面使用解构function fn([a, b]) { console.lo

2020-11-09 11:15:28 198

原创 函数

函数一:使用函数的目的1:用来重复执行某段代码功能2:便于维护3:参数4:返回值二:创建函数1:声明式:function 函数名(参数n) {​}2:表达式:let 函数名 = function(参数) {​}3:构造函数:let 函数名 =new Function(参数) {​}区别:声明函数的方式会使得函数先进行预解析(提升),而表达式方式 不存在预解析。4:匿名函数 :function(参数){​}调用方式:1:callback函数2:(func

2020-11-09 11:14:23 110

原创 Set集合

Set集合set集合 不能保存相同的值,用于去重。1:// 集合初始化let s = new Set([1, 2, 3, 1, 2, 3]);console.log(s);输出结果:Set { 1, 2, 3 }2:// 集合转为数组//第一种方式let s = new Set([1, 2, 3, 1, 2, 3]);let arr = [...s];// 第二种方式let arr= Array.from(s)console.log(arr);输出结果:[ 1, 2,

2020-11-09 11:13:28 84

原创 数组 Array

数组 Array一:数据结构:计算机存储、组织数据的方式。有序排列。二:在数组中,每一个值叫做元素、元素拥有唯一的位置叫做下标(索引)。三:创建数组1:字面量方式创建:​ let arr = [ ];2:通过构造函数创建:​ let arr = new Array()四:添加元素1:创建元素时给数组值:​ let arr = [‘a’,‘b’,‘c’];2:通过索引赋值​ arr[index] = ‘a’;五:数组的属性、方法(数组属于对象objec

2020-11-09 11:12:07 183

原创 javaScript 流程控制

流程控制 控制流程走向一:顺序流程二:选择流程1:单分支if ()语法结构 if (条件) {执行块} //条件为真,运行执行块。条件为假,不做其他操作2:多分支 if(条件) {执行块1;} else {`执行块2;} //条件为真,运行执行块1.条件为假,运行执行块2;const readline = require("readline-sync");let number = readline.question('please a number :');if (

2020-11-02 16:04:20 113

原创 break 与 continue

打断循环,break 与 continue1:breakbreak会使得整个循环语句终止// 案例1:for (var i = 0; i < 10; i++) { if (i === 3) { break; //只要执行break,整个循环终止 } console.log(i);}运行结果0122:continuecontinue 只会使得本次的执行的循环语句终止,会继续执行后面的语句。// 案例2:for (var j = 0;

2020-11-02 14:56:32 52

weipack 入门知识

webpack入门

2021-06-20

基于Vue的SSR技术学习

基于Vue的SSR入门学习

2021-06-20

基于 Vue 的前端权限管理.pdf

基于Vue前端权限管理

2021-06-20

空空如也

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

TA关注的人

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