- 博客(56)
- 资源 (1)
- 问答 (1)
- 收藏
- 关注
转载 预览word
前端实现预览word分为两种,一种是上传前预览(也就是前端使用input或者组件等选择文件后直接预览,此时还没有上传给后端,我定义为纯前端预览),一种是上传后预览(就是文档已经上传到后端,通过后端给的文件流实现预览)https://blog.youkuaiyun.com/kaimo313/article/details/127012225 vue里使用docx-preview预览docx文件。https://www.jianshu.com/p/8e1e90570c52 预览word excel。
2023-02-22 14:02:27
1672
1
转载 jtopo 教程
减少文本信息,文字的渲染非常耗时;Node对象的外观可以通过setStyles方法设置,核心的外观属性有边框颜色、填充颜色、字体颜色、字体(大小、加粗等CSSFont支持的都可以)、圆角。如图灰色矩形代表节点,上面标注了9个连接点(和文本定位是一样的),另外还有一个动态的连接点edge表示节点的边框,是随着对端节点的位置自动计算出来的。一个Layer对象对应一个Canvas,多个Layer常用于画面逻辑分层,比如有的层绘制速度较慢,有的层绘制速度较快,有的层作为背景层,有的作为动画层。...
2022-08-02 09:31:59
2297
原创 实用小方法(保存两位小数,随机数)
formatNum(num) { let str = ""; //字符串累加 str = (Math.round(num * 100) / 100) .toFixed(2) .toString() .replace(/(\d)(?=(\d{3})+\.)/g, function($0, $1) { return $1 + ","; }); return str; //字符串=>数组=
2022-03-29 20:16:27
287
转载 vue中cannot read property of undefined的问题分析及解决
vue项目中经常会遇到"cannot read property ‘某某某’ of undefined"的报错信息。下面我就简单分析下报错原因及解决方法问题描述info是服务端返回的数据,是一个对象。我们要做的就是把对象里的值放到页面显示,先看一下我出错的代码片段<div class="shop-header-discounts" @click="toggleSupportShow"> <div class="discounts-left"> <div
2022-03-29 11:11:56
28329
原创 JavaScript entries() 方法 + 数组索引 +检测数组
从数组 fruits创建一个可迭代对象, 该对象包含了数组的键值对:var fruits = ["Banana", "Orange", "Apple", "Mango"];fruits.entries();entries() 方法返回一个数组的迭代对象,该对象包含数组的键值对 (key/value)。 迭代对象中数组的索引值作为 key,数组元素作为 value。[0, "Banana"][1, "Orange"][2, "Apple"][3, "Mango"]数组索引数组中元素
2022-03-01 14:15:47
501
原创 Array 数组,Array.from()、 Array.of()
Array构造函数还有两个ES6新增的用于创建数组的静态方法:from()和of()。from()用于将类数组结构转换为数组实例,而of()用于将一组参数转换为数组实例。Array.from()的第一个参数是一个类数组对象,即任何可迭代的结构,或者有一个length属性和可索引元素的结构。字符串会被拆分为单字符数组: console.log(Array.from("Matt")); // ["M", "a", "t", "t"] Array.from()对现有数组执行浅复制const a1 .
2022-03-01 12:01:33
257
原创 单例内置对象 Math
Math对象上提供的计算要比直接在JavaScript实现的快得多,因为Math对象上的计算使用了JavaScript引擎中更高效的实现和处理器指令。但使用Math计算的问题是精度会因浏览器、操作系统、指令集和硬件而异。Math.E 自然对数的基数e的值Math.LN10 10为底的自然对数Math.LN2 2为底的自然对数Math.LOG2E 以2为底e的对数Math.LOG10E 以10为底e的对数Math.PI π的值Math.SQRT1_2 1/2的平方根Math.SQRT2 2.
2022-01-14 17:30:37
370
原创 原始值包装类型
NumberNumber类型重写了valueOf()、toLocaleString()和toString()方法。valueOf()方法返回Number对象表示的原始数值,let num = 10; console.log(num.valueOf()); // 10 console.log(num.toString()); // "10" console.log(num.toString(2)); // "1010" console.log(num.toString(8)); // "12
2022-01-14 16:16:21
305
原创 vue js 中的鼠标事件
vue@click//单击@mousedown//按下@mouseup//抬起@dblclick//双击@mousemove//移动@mouseleave//离开@mouseout //移出@mouseenter//进入@mouseover//在js一般事件事件 浏览器支持 描述onClick HTML: 2 | 3 | 3.2 | 4Browser: IE3 | N2 | O3 鼠标点击事件,多用在某个对象控制的范围内的鼠标点击onDblClick HTML: 2 | 3 |
2022-01-13 16:57:30
1439
原创 clientX,clientY,screenX,screenY,offsetX,offsetY 区别测试
clientX:当鼠标事件发生时(不管是onclick,还是omousemove,onmouseover等),鼠标相对于浏览器(这里说的是浏览器的有效区域)x轴的位置;clientY:当鼠标事件发生时,鼠标相对于浏览器(这里说的是浏览器的有效区域)y轴的位置;screenX:当鼠标事件发生时,鼠标相对于显示器屏幕x轴的位置;screenY:当鼠标事件发生时,鼠标相对于显示器屏幕y轴的位置;offsetX:当鼠标事件发生时,鼠标相对于事件源x轴的位置offsetY:当鼠标事件发生时,鼠标相对于事件.
2022-01-13 11:05:24
869
原创 关于 v-for 循环之 index
<ul class="ul_"> <li v-for="(item,index) in dataLi" :key="item.id" @mousemove="dataDetails($event, item, index)">{{item.id}}</li> </ul>dataDetails(e,val,i){ console.log(e,val,i); }
2022-01-13 10:46:04
1720
原创 vue组件里定时器销毁问题
我在a页面写一个定时,让他每秒钟打印一个1,然后跳转到b页面,此时可以看到,定时器依然在执行。这样是非常消耗性能的。如下图所示:解决方法1:首先我在data函数里面进行定义定时器名称:data() { return { timer: null // 定时器名称 } },然后这样使用定时器:this.timer = (() => {
2022-01-12 17:00:08
2970
原创 判断对象是否为空
我们想要判断对象是否为空,像基本类型那样判断是不可以的, ==={} ?这样是错误的,因为只是比较引用地址是否相同,所以可以采取下面的方法来进行判断1.根据for...in遍历对象,如果存在则返回true,否则返回falsefor ( let i in obj) { return true;}return false2.利用JSON自带的JSON.stringify()方法来判断大概思路就是转化为字符串’{}'来进行判断if (JSON.stringify(obj) === '{.
2022-01-11 14:26:06
283
原创 数组对象增加单个属性
新数组:array;原数组:list;给原数组list的对象加一个名为indexNum的属性,属性值为str let array=[]; this.list.map((item,index)=>{ array.push( Object.assign({},item,{indexNum:str}) ) }
2022-01-10 16:18:05
428
原创 正则校验 js
带小数的数字var valiNumberPass1 = (rule, value, callback) => {//包含小数的数字 let reg = /^[+-]?(0|([1-9]\d*))(\.\d+)?$/g; if (value === '') { callback(new Error('请输入内容')); } else if (!reg.test(val
2022-01-07 15:22:17
255
原创 canvas.getBoundingClientRect()
Element.getBoundingClientRect() 方法返回元素的大小及其相对于视口的位置。canvas 用来获取鼠标点击的位置,//这个方法,在canvas 用来获取鼠标点击的位置, let mousedown=function(e){ e = e || window.event; // 这个 你就可以知道你画的位置在距离你的canvas左边框的距离 startx = e.client.
2021-12-31 14:15:03
2775
原创 jQuery 文档操作 - empty() 方法
empty() 方法从被选元素移除所有内容,包括所有文本和子节点。$(".btn1").click(function(){ $("p").empty();});
2021-12-31 14:02:24
692
原创 js怎样获取div元素的宽度
<!DOCTYPE html><html lang="zh"><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></title>
2021-12-31 13:50:06
6717
原创 jTopo的基本使用
<canvas width="800" height="500" id="canvas" style=" background-color:#EEEEEE; border:1px solid #444;">Jtopo的核心对象有6个,分别是Stage(舞台对象),Scene(场景对象),Node(节点对象),Link(连线对象),Container(容器对象),Effect.Animate(动画效果)ar canvas = document.getElementById('canvas'
2021-12-27 14:14:43
1965
原创 内阴影css
测试5:--内阴影 <div style="box-shadow: 0px 0px 10px red inset; border:1px solid green"></div> box-shadow: 0px 0px 10px red inset; 与上面写法相同 唯一不同的是添加了一个inset 其它属性与外阴影相同
2021-12-15 10:22:36
257
原创 element 表格插槽的使用
<el-table-column label="等级" prop="almlvl" align="center" width="80px"> <template slot-scope="scope"> <div class="cusCell"> <div class="cus_circle" :class="[{'almlvl_1': scope.row.al
2021-12-07 10:15:59
682
原创 echarts 折线的使用
// initmap(xdata, ydata1, ydata2) { // let lineStyle2 = {}; // if (this.colorb == 2) { // lineStyle2 = { // color: '#454d65', // // opacity: 0.1, ...
2021-11-26 15:57:02
128
百度地图拖动会卡是怎么回事
2021-08-10
TA创建的收藏夹 TA关注的收藏夹
TA关注的人