首页
壁纸
直播
留言
关于
友链
统计
Search
1
tampermonkey油猴和谷歌访问助手的安装---破解谷歌访问助手
13,701 阅读
2
编译asar文件与electron反编译
3,265 阅读
3
安装postcss-px-to-viewport,将px单位转换为视口单位的 (vw, vh, vmin, vmax) 的 PostCSS 插件(有更新postcss弃用,附带vite.config.ts文件)
3,242 阅读
4
websocket封装带心跳和重连机制(vue3+ts+vite)
2,821 阅读
5
js一些小功能(持续更新)
2,452 阅读
大前端
JavaScript
CSS
HTML
框架
Vue
electron
element-ui/plus
小程序
微信小程序
uni-app
服务端
Node.js
nginx
PHP
MySQL
工具
杂记
登录
Search
标签搜索
Vue3
Vue
Axios
微信小程序
Javascript
Vuex
js
请求
request
前端
tampermonkey
Google
助手
脚本
小程序云开发
Bootstrap
壁纸
鼠标事件
跨域
css
大祥子i
累计撰写
55
篇文章
累计收到
128
条评论
首页
栏目
大前端
JavaScript
CSS
HTML
框架
Vue
electron
element-ui/plus
小程序
微信小程序
uni-app
服务端
Node.js
nginx
PHP
MySQL
工具
杂记
页面
壁纸
直播
留言
关于
友链
统计
搜索到
28
篇与
框架
的结果
2021-10-22
Vue3配置开发环境和生产环境
1、创建开发环境项目根目录下创建.env.development文件# 页面标题 VUE_APP_TITLE = 标题 # 开发环境配置 ENV = 'development' # 连接地址 VUE_APP_API= "http://192.168.4.67:17000/sign/" 2、创建生产环境项目根目录下创建.env.production文件# 页面标题 VUE_APP_TITLE = 标题 # 测试环境配置 ENV = 'staging' # 连接地址 VUE_APP_API= "/sign/" 3、使用process.env.VUE_APP_API
2021年10月22日
751 阅读
1 评论
140 点赞
2021-10-20
Vue2/3实现dom拖动,Ctrl+鼠标滚轮放大缩小
1、在Vue2/3中dom拖动,Ctrl+鼠标滚轮放大缩小dom,可以使用@panzoom/panzoom库实现具体实现2、npm下载插件包 npm install @panzoom/panzoom -S 3、在需要的页面按需引入(也可以全局引入),详细见下文代码块4、通过@wheel事件监听鼠标滚轮,调整dom大小(@wheel是只有当我们滚动鼠标滚轮的时候,才会触发){mtitle title="Vue2实现方式"/}<template> // 需要拖动的dom <div ref="dom" @wheel="wheel"></div> </template> <script> import Panzoom from "@panzoom/panzoom"; // 页面挂载的时候就调用方法 export default { data () { return { panzoom: null } } mounted () { this.getPanzoomElement() }, methods: { // 拖动方法 getPanzoomElement () { // 存放Panzoom用于后面的其他操作 this.panzoom = Panzoom(this.$refs.dom, { // origin: "0 0", // 位置 maxScale: 2, // 最大比例 minScale: 0, // 最小比例 overflow: "auto", // 溢出 canvas: true, // 是否视为canvas }); } // 监听鼠标滚轮 wheel (event) { // 修改为根据鼠标位置缩放 if (event.ctrlKey) { // 这里可以扩展,比如按下其他案件+滚轮放大缩小等 const scaleResult = this.panzoom.zoomWithWheel(event); } } } } <script>{mtitle title="Vue3实现方式"/}<template> // 需要拖动的dom <div ref="wheelDom" @wheel="wheel"></div> </template> <script setup> // 按需引入 import { onMounted, reactive, toRefs,ref } from "vue"; import Panzoom from "@panzoom/panzoom"; // 引入插件 const wheelDom = ref(null); // ref获取dom // 响应式数据 const state = reactive({ panzoom: null }) // 拖动方法 const getPanzoomElement = () => { // 存放Panzoom用于后面的其他操作 state.panzoom = Panzoom(wheelDom.value, { // origin: "0 0", // 位置 maxScale: 2, // 最大比例 minScale: 0, // 最小比例 overflow: "auto", // 溢出 canvas: true, // 是否视为canvas }); } // 监听鼠标滚轮 const wheel = (event) => { // 修改为根据鼠标位置缩放 if (event.ctrlKey) { // 这里可以扩展,比如按下其他案件+滚轮放大缩小等 const scaleResult = this.panzoom.zoomWithWheel(event); } } // 页面挂载的时候就调用方法 onMounted(() => { getPanzoomElement() }); <script>
2021年10月20日
1,309 阅读
0 评论
1 点赞
2021-10-12
Vue事件中心管理传递--组件传值--传值
{mtitle title="新建js文件Bus.js"/}// 事件中心 import Vue from 'vue' export default new Vue(){mtitle title="A页面"/} // 引入事件中心传递 import Bus from '../../util/Bus' // 发送 Bus.$emit('名称', 数据){mtitle title="B页面"/}// 引入事件中心传递 import Bus from '../../util/Bus' // 接收,最好放在created里接收 Bus.$on('treeData', treeData => { this.treeData = treeData // console.log('我是树形:' + treeData) })
2021年10月12日
287 阅读
0 评论
0 点赞
2021-10-12
Vue简单封装Axios
{mtitle title="新建api.js文件"/}/* * @Author: lzx * @Date: 2021-10-12 13:12:08 * @LastEditors: lzx * @LastEditTime: 2021-10-12 14:20:44 * @Description: Fuck Bug * @FilePath: \xsy-auth\src\util\api.js */ // 引入axios import axios from 'axios' // axios.defaults.baseURL = 'http://127.0.0.1:8000' // 设置请求后端的URL地址 axios.defaults.timeout = 2000 // axios请求超时时间 // // 头部携带token axios.defaults.headers.common.token = sessionStorage.getItem('token') // get请求 const get = (url, param) => { return new Promise((resolve, reject) => { axios.get(url, { param }).then(res => { resolve(res.data) }).catch(err => { reject(err.data) }) }) } // put请求 const put = (url, data) => { return new Promise((resolve, reject) => { axios.put(url, data).then(res => { resolve(res.data) }).catch(err => { reject(err.data) }) }) } // delete请求 const del = (url, data) => { return new Promise((resolve, reject) => { axios.delete(url, data).then(res => { resolve(res.data) }).catch(err => { reject(err.data) }) }) } // post请求 const post = (url, data) => { return new Promise((resolve, reject) => { axios.post(url, data).then(res => { resolve(res.data) }).catch(err => { reject(err.data) }) }) } export { get, put, del, post } {mtitle title="main.js中引用"/}// 引入封装的Axios import { get, put, del, post } from './util/api.js' // 使用封装的Axios Vue.prototype.$get = get Vue.prototype.$put = put Vue.prototype.$delete = del Vue.prototype.$post = post{mtitle title="全局页面中使用方式"/}// 1、get请求 thi.$get('url').then(res => { console.log(res.data) }) // 2、put请求 this.$put('url', {有携带 | 没有可以直接如下}).then(res => { console.log(res.data) }) this.$put('url').then(res => { console.log(res.data) }) //this.$delete...如上 //this.$post...如上
2021年10月12日
164 阅读
0 评论
0 点赞
2021-09-30
Vue2/3导出PDF或图片
1、npm引入相应的包npm i html2canvas -S npm i jspdf -S // 导出图片无需安装jspdf2、使用:引入封装的js,直接调用封装的方法并传入获取的dom和文件名字(封装好的方法见下文)<div ref="exportPDF"></div> // 需要导出的dom import exportPdf from '@utils/exportPDF' // 引入封装好的导出方法(见下文) // Vue3写法直接使用ref获取dom const exportPDF = ref(null) // 通过ref获取dom exportPdf(exportPDF.value, '排名列表统计') // 使用封装好的PDF方法 // Vue2写法通过this.$refs获取dom let dom = this.$refs.exportPDF.$el exportPdf(dom, '排名列表统计') // 使用封装好的PDF方法{mtitle title="封装的导出PDF方法"/}/* * @Author: lzx * @Date: 2022-04-06 13:39:55 * @LastEditors: lzx * @LastEditTime: 2022-04-06 14:51:34 * @Description: Fuck Bug * @FilePath: \cs_talk_admin\src\utils\exportPDF.js */ /** * 封装导出PDF方法 */ import html2Canvas from 'html2canvas' import JsPDF from 'jspdf' export function exportPdf (dom, title) { html2Canvas(dom,{ backgroundColor: "#ffffff", // 背景颜色 dpi: 96, // 将分辨率提高到特定的dpi,默认值为96 allowTaint: true, // 开启跨域 useCORS: true, // 是否尝试使用CORS从服务器加载图像(跨域) scrollY: 0, // Y轴偏移 scrollX: 0, // X轴偏移 scale: 1, // 用于渲染的比例尺。默认为浏览器设备像素比率。默认值是1,手机端设置成2 }).then((canvas) => { var contentWidth = canvas.width var contentHeight = canvas.height // 一页pdf显示html页面生成的canvas高度; var pageHeight = contentWidth // 未生成pdf的html页面高度 var leftHeight = contentHeight // 页面偏移 var position = 0 // a4纸的尺寸[595.28,841.89],html页面生成的canvas在pdf中图片的宽高 var imgWidth = 595.28 var imgHeight = (592.28 / contentWidth) * contentHeight var pageData = canvas.toDataURL('image/jpeg', 1.0) var PDF = new JsPDF('', 'pt', 'a4') if (leftHeight < pageHeight) { PDF.addImage(pageData, 'JPEG', 0, 0, imgWidth, imgHeight) } else { while (leftHeight > 0) { PDF.addImage(pageData, 'JPEG', 0, position, imgWidth, imgHeight) leftHeight -= pageHeight position -= 841.89 if (leftHeight > 0) { PDF.addPage() } } } PDF.save(title + '.pdf') // 这里是导出的文件名 }) } {mtitle title="封装的导出图片方法"/}/* * @Author: lzx * @Date: 2022-04-06 13:39:55 * @LastEditors: lzx * @LastEditTime: 2022-04-06 13:39:55 * @Description: Fuck Bug * @FilePath: \tree\src\utils\exportImg.js */ /** * 封装导出图片方法 */ import html2Canvas from 'html2canvas' export function exportImg (dom, title) { html2Canvas(dom,{ backgroundColor: "#ffffff", // 背景颜色 dpi: 96, // 将分辨率提高到特定的dpi,默认值为96 allowTaint: true, // 开启跨域 useCORS: true, // 是否尝试使用CORS从服务器加载图像(跨域) scrollY: 0, // Y轴偏移 scrollX: 0, // X轴偏移 scale: 1, // 用于渲染的比例尺。默认为浏览器设备像素比率。默认值是1,手机端设置成2 }).then((canvas) => { // 生成图片,设置导出质量(0-1) var imgURL = canvas.toDataURL('image/jpeg', 1.0) // 创建a标签,模拟点击下载 const $a = document.createElement("a"); $a.setAttribute("download", title); $a.href = imgURL; $a.click(); }) }特别注意:网络图片存在跨越问题的,导出后会不显示图片,解决方法修改图片跨越问题,或者图片转换为Base64格式(本地图片也可),相应html2Canvas配置(跨域)见代码!
2021年09月30日
1,086 阅读
0 评论
56 点赞
1
...
3
4
5
6