自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 后台返回一个文件流如何下载

1.在进行接口请求的时候,加上{responseType:“blob”}

2023-08-21 19:53:07 154

原创 文件上传:原生input、组件ant-desgin-vue(通过某个按钮进行上传操作)

【代码】文件上传:原生input、组件ant-desgin-vue(通过某个按钮进行上传操作)

2023-07-25 16:20:22 613

原创 走马灯+echarts图表展示

需要进行走马灯+echarts图表展示,后台返回数据为一次性返回<el-carousel indicator-position="none" class="carousel" > <el-carousel-item v-for="item,index in length" :key="index" > <div class="online_echarts"

2022-05-10 11:36:08 1707

原创 自动滚动组件

<template> <div @mouseover="handlePause" @mouseleave="handleMove" class="seamless_wrap" ref="seamless" > <div class="scroll" :style="style"> <div class="scroll_item" ref="item"> <slot><

2022-04-07 14:25:02 185

原创 echarts-后台返回不是连续时间,前台图表要求展示连续时间的数据

使用moment.js1.展示最近12个月的数据 let timeArr = [];//最近12个月的月份 for (let i = 0; i < 12; i++) { timeArr.push( `${moment(new Date()).subtract(i, "months").format("YYYY-MM")}` ); } timeArr.reverse();//时间排序 console.log(timeArr, "timeArr") let arr =

2022-03-21 15:50:59 1749

原创 echarts的x轴不带时分秒,tooltip带时分秒

//x轴xAxis: { name: "时间", type: "category", boundaryGap: false, data: this.reserve(this.tData).map((item) => item.collectTime), axisLine: { lineStyle: { color: "#03c5fd", }, }, axisLabel: { formatter: (name) => n

2022-01-21 14:10:10 1207

原创 数组对象去重

数组对象去重let targetNode=[{id:"1",text:"芋圆"},{id:"2",text:"啵啵"},{id:"1",text:"芋圆"},]let obj = {}; let newTarget = targetNode.reduce((cur, next) => { obj[next.id] ? "" : obj[next.id] = true && cur.push(next); return cur; }, [])

2021-11-01 15:10:34 95

原创 前端使用懒加载+分页实现大量数据的渲染

import React, { useState, useEffect } from "react"import { Input } from 'antd';const { Search } = Input;let curPage = 1;//当前页数let prevY = 0;let searchData = []function Test() { const [list, setList] = useState([]) let data = []; let pa

2021-08-10 16:49:01 1375 2

原创 keep-alive用法

keep-alive 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。它有以下属性:include - 字符串或正则表达式。只有名称匹配的组件会被缓存。exclude - 字符串或正则表达式。任何名称匹配的组件都不会被缓存。max - 数字。最多可以缓存多少组件实例。当我们需要对里面动态组件进行有条件的缓存时,可以去利用他的include 和 exclude属性用法:<!-- 逗号分隔字符串 --><keep-alive include="a,b"> &l

2021-07-05 14:58:55 264

原创 利用js把x分换算成x天x时x分的格式

{{ Math.floor(elapsedTime / (24 * 60)) }}天{{ Math.floor((elapsedTime % (24 * 60)) / 60) }}时{{ elapsedTime % 60 }}分

2021-07-05 14:40:47 83

原创 如何选中ul里的某一个li,并改变其样式

1.html<ul id="ul"> <li v-for="(item,index) in list" :key="index" @click="changeLi(item,index)" > <div :class="select===index?'select':''"> <img src="~@/assets/logo.png" alt=""

2021-07-05 14:35:13 2161

原创 react父组件如何调用子组件的方法

父组件<button onClick={this.reset}>重置</button><Son ref='son' onRef={this.onRef}></Son>reset=()=>{ this.son.clickReset()}onRef=(ref)=>{ this.son=ref}子组件componentDidMount=()=>{ this.props.onRef(this)}clickReset=

2021-03-02 16:36:39 191

原创 js实现鼠标滚轮图片放大缩小

<!doctype html><html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Document</title></head><body> <img id="img" src="11.png" alt="" style="width:100p

2020-09-16 16:06:42 6356

原创 react里面实现图片旋转效果

1.新建文件夹rotate.jsclass RotateImg { constructor() { this.el = null; } init(cls) { this.el = document.getElementById(cls); // this.el = document.getElementsByClassName(cls)[0]; return this; } DragStart() { this.el.onmou

2020-09-06 22:36:37 2169

原创 js实现放大镜的效果

基本布局<div id="box"> <div id="middleImg"> <img src="images/images2/1_2.jpeg" /> <div id="middleArea"></div> </div> <div id="small"> <ul> <li><img src="i

2020-08-17 22:00:02 162

原创 冒泡排序,选择排序,快速排序三种排序方式

(1)冒泡排序for (i = 0; i < arr.length - 1; i++) { for (j = 0; j < arr.length - i - 1; j++) { if (arr[j] > arr[j + 1]) { var tmp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = tmp; } }}(2)选择排序for (i = 0; i < arr.lengt

2020-08-17 21:51:14 233

原创 实现继承的几种方式

(1)寄生继承Object.create(2)构造函数+对象冒充 function Person(_name, _age) { this.name = _name; this.age = _name } Person.prototype.fly = function () { console.log("fly") } function Student(_name, _age, _job) { Person.call(t

2020-08-17 21:48:43 92

原创 promise相关

回调地狱需求是: 通过选择省,再去发请求,选择城市,再发请求,请求到区$.ajax({ //全国有多少省 type:'get/post' url:'www', dataType:'json/jsonp' async:true, data:{ id:"1" }, success:function(res){ console.log(res) $.ajax({ //这个省有多少市

2020-08-17 21:42:00 106

原创 window属性对象中的history和navigator

history对象history对象的属性history.length; //history对象中的记录数history对象的方法history.back(); //前往浏览器历史条目前一个URL, 类似后退history.forward(); //前往浏览器历史条目下一个URL, 类似前进history.go(-1); //浏览器在history对象中向前或向后(-1代表后退, 1代表向前,0表示刷新当前页面)navigator对象navigator对象是window对象的属性,它保存

2020-07-27 22:30:56 182

原创 js的继承

(1)寄生继承Object.create(2)构造函数+对象冒充function Person(_name, _age) { this.name = _name; this.age = _name}Person.prototype.fly = function () { console.log("fly")}function Student(_name, _age, _job) { Person.call(this, _name, _age) this.job = _jo

2020-07-20 22:15:45 89

原创 数组扁平化(多维变一维)

(1)es6的拓展运算符var arr = [[1, 2, 2], [3, 4, 5, 5], [6, 7, 8, 9, [11, 12, [12, 13, [14]]]], 10];function flatten(arr) { while (arr.some(item => Array.isArray(item))) { arr = [].concat(...arr); } return arr;}console.log(flatten(arr))(2)递归var

2020-07-20 22:12:20 146

原创 数组去重的方法

(1)es6的拓展运算符和Setconsole.log(…new Set(arr))(2)遍历function unique (arr) {let newarr = []for (let i = 0; i < arr.length; i++) {if (newarr .indexOf(arr[i]) === -1) {newarr .push(arr[i])}}return newarr}console.log(unique (arr) )...

2020-07-20 22:09:56 75

原创 react应用数据可视化

地址:https://echarts.apache.org/examples/zh/index.html#chart-type-radar1.下载依赖包npm add echarts -S2.引入import echarts from ‘echarts’export default class App extends Component { render() { return ( <div> <div id="main" style

2020-07-20 21:45:37 261

原创 react的生命周期

1. 挂载卸载过程1.1.constructor()constructor()中完成了React数据的初始化,它接受两个参数:props和context,当想在函数内部使用这两个参数时,需使用super()传入这两个参数。注意:只要使用了constructor()就必须写super(),否则会导致this指向错误。1.2.componentWillMount()componentWillMount()一般用的比较少,它更多的是在服务端渲染时使用。它代表的过程是组件已经经 历了constructor

2020-07-20 21:43:08 87

原创 vuex的使用流程

1.引入一个安装好的vuex2.注册vuex3.实例化4.定义核心state 数据mutation 方法actions 异步方法getters 对已有数据加工形成新数据,store中数据变化,getter中的数据也会变化5.挂载store到vue6.在需要的组件中使用vueximport Vue from 'vue'import Vuex, { Store } from 'vuex'Vue.use(Vuex)export default new Store({ stat

2020-07-20 21:17:51 1561

原创 实现ant-desgin里的Modal组件拖拽

在使用Modal组件时,新增了一个需求,让他能够实现拖拽的效果1.首先找到控制modal的类名让这个div框变为一个绝对定位,它默认是相对定位,然后可以给它一个高度,如果不给,就是我图中的样子了.在index.less文件里面给它样式,引入index.less.ant-modal-content{ position: absolute !important; width: 480px;}2.封装一个drag.jsdrag.jsclass DragBox { construct

2020-07-13 22:06:00 862

原创 新增数组对象方法

1 isArray()Array.isArray()方法是用来判断某个值是否是数组,如果是,则返回true,否则返回false,用于判断一些类似数组的对象很有用。因为无论是数组还是对象,对于typeof的操作返回值都为object,所以就有了区分数组类型和对象类型的需要.而有些对象中又存在length属性,instanceof用来判断内存中实际对象A是不是B类型2 indexOf(),lastIndexOf() [ES5]indexOf()方法返回给定元素能找在数组中找到的第一个索引值,否则则返回

2020-07-09 21:49:47 1962

原创 新增的字符串方法

字符串includes():返回布尔值,表示是否找到了参数字符串。startsWith():返回布尔值,表示参数字符串是否在源字符串的头部。endsWith():返回布尔值,表示参数字符串是否在源字符串的尾部。repeat(): 返回一个新字符串,表示将原字符串重复n次.1 trim()清除空白 [Es6]2 for of 循环字符串var str = "????";for(var i=0; i<str.length; i++) { console.log(str[i]);

2020-07-09 21:39:43 155

原创 map里面不能return

用map进行遍历,在里面进行判断的时候,return不能起到相关作用.可以把map改为for循环,然后再进行return

2020-07-06 21:17:31 5789 1

原创 使用ant-design组件里面Input,既能传入更改的值,又能编辑该输入框

在使用ant-design组件里面Input时,遇到以下情况:在父组件有个input框,子组件也有一个input框,点击父组件的传入按钮,值能够传入子组件中,且子组件里的input框的里面的值能够编辑父组件import React, { Component } from "react"import { Input, Modal, Button } from 'antd';import Toast from './toast'class Test extends React.Component

2020-07-06 21:10:48 8292

原创 在引用ant组件时,报以上的错误

最近刚用框架搭建了一个新的app,在引用ant组件时,报以上的错误解决方式:在index.js里面把它自带的严格模式去掉,就不会报错了。<React.StrictMode></React.StrictMode>去掉该标签

2020-07-06 19:29:39 260

原创 jq的属性操作

设置样式属性操作1.设置单个样式:第一个参数表示:样式属性名称;第二个参数表示:样式属性值$(selector).css(“color”, “red”);2.设置多个样式:(也可以设置单个)$(selector).css({“color”: “red”, “font-size”: “30px”});获取样式属性操作$(selector).css(“font-size”);类操作1.添加类样式:addClass()2.移除类样式:removeClass()3.判断有没有类样式:has

2020-06-14 22:36:17 97

原创 接口封装在一个文件里面,用promise把得到的值返回出去

1.在src下新建文件夹config/api.js2.api.jsimport axios from 'axios'class API { getTree () { return new Promise((resolve,reject)=>{ try { const res = axios.get("http://localhost:5000/treeData") console.log(res,"我是你要看的数据")

2020-06-14 22:34:57 803

原创 日期相关表达

获取当前日期var date=new Date(); 这个页面在运行的那一刻,获取本地计算机时间console.log(date.getFullYear()); 获取当前年console.log(date.getMonth()); 获取月份console.log(date.getDay()); 获取星期几console.log(date.getDate()); 获取日console.log(date.getHours()); 获取小时,24进制console.log(date.getMinut

2020-06-11 22:49:12 216

原创 offset系列知识和事件对象

offsetParent 找带有定位的父元素,如果父级们,都没有定位,找bodyoffsetLeft 和offsetTop 到带有定位的父元素的距离,如果父级们, 都没有定位,到body的距离offsetWidth和offsetHeight 得到自身的大小 padding+border+自身的宽高=自身大小事件对象console.log(e.pageY) 鼠标点击的点,到页面不可见区域的高度console.log(e.clientY) 鼠标点击的点,到可视区域的距离console

2020-06-09 21:24:58 255

原创 js实现浏览器宽度改变,样式随之变化

响应式做法,浏览器宽度//document.documentElement.clientWidth 浏览器的宽度 window.onresize = function () { //document.documentElement.clientWidth 浏览器的宽度 if (document.documentElement.clientWidth > 200 && document.documentElement.clientW

2020-06-08 22:39:14 1529

原创 jq的样式属性操作

设置样式属性操作1.设置单个样式:第一个参数表示:样式属性名称;第二个参数表示:样式属性值$(selector).css(“color”, “red”);2.设置多个样式:(也可以设置单个)$(selector).css({“color”: “red”, “font-size”: “30px”});获取样式属性操$(selector).css(“font-size”);类操作1.添加类样式:addClass()2.移除类样式:removeClass()3.判断有没有类样式:hasC

2020-06-07 20:15:35 252

原创 jq的常用选择器

jQuery的入口函数$(function(){})$(document).ready(function(){})jQuery(function(){})jQuery(document).ready(function(){})不能获取图片高度,因为图片还没有加载完成jQuery的基本选择器1.Id选择器:$(“#btnShow”).css(“color”, “red”);选择id为btnShow的一个元素(返回值为jQuery对象)2.类选择器:$(“.liItem”).css(“col

2020-06-06 14:36:39 1623

原创 ajax的get请求与post请求

Ajax 技术核心是JavaScript对象XMLHttpRequest(简称 XHR), 它是一种支持异步请求数据的技术.与服务器进行数据交换,实现同步或异步的刷新.ajax.post.jsconst Ajax = (function () { // {uname:123,upwd:123}; // uname=123&upwd=123& function getPrams(obj) { var str = ""; for (v

2020-06-04 21:49:35 134

原创 正则表达式

var reg = new RegExp("box");var str = "this is a Box box ";console.log(reg.test(str));var reg = /box/; var str = "this is a Box box "; console.log(reg.test(str));1, test() : 返回true则符合, false则不符合2, exec() : 返回数组则符合, null则不符合这两种方法使用正则表达式对象去调用, 参数为要

2020-06-03 19:39:15 74

空空如也

空空如也

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

TA关注的人

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