js
强身健体,清神醒脑
这个作者很懒,什么都没留下…
展开
-
高德地图一些常用的地理位置获取方法
1、首先引入plugin//webapi.amap.com/maps?v=1.4.15&key=000&plugin=AMap.CustomLayer,AMap.Geocoder2、mixinimport { uuid } from '@/utils/utils';export default { data() { return { map: null, mapStyle: 'amap://styles/bcb8c05d5306c3原创 2021-07-15 10:36:32 · 1081 阅读 · 0 评论 -
axios多个请求同时触发时,loading图结束过早问题
原因在于loading展示时机没有考虑到多个接口短时间内同时请求的情况/* eslint-disable no-unused-vars */import axios from 'axios'import store from '@/store/index';let reqCount = 0;function addReqCount(){ // 计数器累加 // 每一次请求就加1,只要大于1就展示loading if(!reqCount){ store.commit('chan原创 2021-03-17 13:49:23 · 508 阅读 · 0 评论 -
常用文件格式通过文件名称后缀匹配图片
export default { data () { return { fileTypes: { imgTypes: ['png', 'jpg', 'jpeg', 'jfif', 'gif', 'PNG', 'JPG', 'JPEG', 'JFIF', 'GIF'], docTypes: ['doc', 'docx'], zipTypes: ['zip'], rarTypes: ['rar'], text原创 2021-01-15 15:49:46 · 544 阅读 · 0 评论 -
js根据id递归查找json中的某一项
findItemName(arr) { const len = arr.length; let name; if (this.id) { for (let i = 0; i < len; i++) { if (this.id === arr[i].itemId) { name = arr[i].itemName; break; } else if (arr[i].原创 2020-12-08 16:45:18 · 1403 阅读 · 0 评论 -
获取浏览器窗口滚动条的宽度
const scrollW = window.innerWidth - document.documentElement.offsetWidth; // 滚动条宽度原创 2020-08-20 10:45:22 · 473 阅读 · 0 评论 -
vue脚手架打包后,直接启动nodejs服务部署静态文件
1、根路径下新建build.js(注意安装必要的npm包)const { run } = require('runjs')const chalk = require('chalk')const path = require('path');const rawArgv = process.argv.slice(2)const args = rawArgv.join(' ')if (process.env.npm_config_preview || rawArgv.includes('--previ原创 2020-07-31 23:02:46 · 1163 阅读 · 0 评论 -
js深拷贝
function deepCopy(obj: any) { let result: any = Array.isArray(obj) ? [] : {}; for (var key in obj) { if (obj.hasOwnProperty(key)) { if (typeof obj[key] === "object" && obj[key] !== null) { result[key] = deepCopy(obj[key]); //递原创 2020-07-29 11:16:50 · 135 阅读 · 0 评论 -
微信分享简单代码块
import { getWxShareConfig } from '@/apis/common';import { isWxClient } from '@/assets/js/utils';export default { mounted () { }, methods: { /** * * @param {*} config 参数 * @param config.title * @param config.desc * @para原创 2020-07-22 14:38:32 · 536 阅读 · 0 评论 -
前端webSocket初始化,心跳检测代码块
class WSocket { ws=null; timeout=20000; timeoutObj= null; serverTimeoutObj=null; init () { this.ws = new WebSocket(baseUrl); this.ws.addEventListener('open', () => { this.reset().start(); // 心跳检测 }); .原创 2020-07-08 20:13:34 · 829 阅读 · 0 评论 -
使用xlsx-js插件将JSON转换为excel并导出
import XLSX from 'xlsx';/** * 单个sheet下载 * @param {object[]} json json * @param {object} tableTitle excel表头名称 * @param {string} fileName 文件名称 * @param {object} wbConfig 扩展 * @param {object} woptsConfig 扩展 */function json2Excel(json,tableTitle,fileN原创 2020-06-16 09:10:41 · 1527 阅读 · 0 评论 -
pm2 在windows环境下执行 pm2 start npm -- run prod 命令报错问题解决方案
出现时机当使用pm2命令执行npm命令时会出现解决方案项目根目录下新建start_prod.js文件(名字随意),安装node-cmd包:const cmd = require('node-cmd');cmd.run('npm run start:prod');完成后 执行 pm2 start start_prod.js -n name完美解决,原因可能是pm2对cmd的某些东西不兼容...原创 2020-06-13 09:22:59 · 2529 阅读 · 0 评论 -
vue-router路由表初始化
import Vue from 'vue'import Router from 'vue-router'Vue.use(Router)const createRouter = () => new Router({ mode: 'history', routes: []})const router = createRouter()export function re...原创 2020-01-15 12:58:06 · 2255 阅读 · 0 评论 -
前端接收二进制流的方式实现下载(get & post)
传送门//请求头要设置这个: { responseType: 'blob' }得到的二进制流传入下面的方法中即可完成下载 exportReport(data) { try { var blob = new Blob([data], { type: "application/vnd.ms-excel;charset=...原创 2019-12-19 18:10:03 · 1652 阅读 · 1 评论 -
简单实现webSocket + 心跳机制
import { baseUrl } from "../assets/js/baseUrl";class WS { ws: any | null = null; timeOut: number = 5000; timer: any = null; serverTimer: any = null; connect() { this.ws = new WebSocket...原创 2019-12-18 14:25:38 · 279 阅读 · 0 评论 -
简单实现一个函数调用loading图
const loading: any = { ele: null, render() { var fragment = document.createDocumentFragment(); const div = document.createElement("div"); div.style.position = "fixed"; div.style.to...原创 2019-12-05 11:08:44 · 329 阅读 · 0 评论 -
js控制input输入框的光标位置
function cursorMove(spos: any) { // spos 光标的位置 -1为最后一位 var tobj: any = document.getElementsByClassName("van-field__control")[0]; if (spos < 0) spos = tobj.value.length; if (tobj.set...原创 2019-11-22 15:10:47 · 1052 阅读 · 0 评论 -
js原生实现复制
copyCode: function (val,e) { let input = document.createElement('input'); input.setAttribute('readonly', 'readonly');//可设可不设 input.setAttribute('value', val); document...原创 2019-11-13 13:40:11 · 280 阅读 · 0 评论 -
浏览器实现点击按钮复制功能
copyToClipboard() { var val = document.getElementById('payment-url');//此处为需要复制文本的包裹元素 window.getSelection().selectAllChildren(val); document.execCommand ("Copy");...原创 2019-11-06 16:22:07 · 1081 阅读 · 0 评论 -
js数组克隆
1、利用js数组的concat方法可轻松实现数组克隆或者合并const arr=[1,2,3];arr1=arr.concat([]); //返回新的数组console.log(arr1,"-----",arr)console.log(arr==arr1) //false2、可以利用JSON方法...原创 2018-12-09 16:43:41 · 255 阅读 · 0 评论 -
获取url参数的简单方法
function getUrlParam(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象 var r = window.location.search.slice(1).match(reg); //匹配目标参数 ...转载 2019-06-05 10:01:01 · 198 阅读 · 0 评论 -
history模式下Nginx后台配置
网上搜了很多相关文章,但是发现页面可以请求下来,图片和css样式表无法加载。于是采取下面方案: location / { root html; index index.html index.htm; try_files $uri $uri/ @rewrites; } location @...原创 2019-06-14 17:31:03 · 1357 阅读 · 0 评论 -
前端hash和history详解
高手总结好了:https://www.cnblogs.com/tugenhua0707/p/10859214.html转载 2019-06-12 10:32:13 · 1403 阅读 · 0 评论 -
前端图片上传加压缩
methods: { upload(e) { let formDate = new FormData(); //利用FormDate构造函数激昂文件转换为二进制 let params = { path: "order/" // bucket:_this.bucket }; Indicator.open("准备上传");...原创 2019-07-31 19:11:04 · 288 阅读 · 0 评论