- 博客(134)
- 资源 (64)
- 收藏
- 关注
原创 nexus搭建npm私有镜像
使用 npm-group 仓库,nexus会自动判断,hosted本地仓 和 proxy代理仓哪个仓库存在要下载的包,并进行下载。使用hosted类型的仓库,将本地包打入私有镜像仓库,只保存在本地私有镜像仓库,proxy代理仓库不会有任何变化。创建一个名为 npm-group 的分组仓库,并本地hosted仓库和代理Proxy仓库放入分组。创建一个名为 npm-proxy 的代理仓库,可以将代理地址写淘宝镜像加快本地镜像的速度。通过上面的方法,创建了三个类型的仓库,每个仓库都有自己的使用方式。
2023-11-02 13:41:07 1102
原创 浏览器 Experimental third-party storage partitioning(实验性第三方存储分区)
引起这个问题是chrome浏览器的新特性,Experimental third-party storage partitioning,引起的,只要是非同级且非同源的页面进行嵌套,那么非顶级的源存储与顶级的源存储之间的共享数据会进行隔离。如果你在使用iframe嵌套页面A后,嵌套页面A的存储数据和使用顶级打开的页面A的存储数据不通时,就是因为这个特性参数引起的,也就是说后续想使用postMessage跨域获取存储数据,就要考虑同源的问题了。在浏览器开发者工具的Application(应用程序)标签页的。
2023-10-11 14:27:37 1273
原创 js和nodejs如何将文件切片和合并
如果想在页面上操作文件,就需要使用到与文件相关的API接口,如Blob、File、FileList、FileReader、FileReaderSync,这几个就是操作文件常见的接口。Blob是实现文件切片的一个核心接口,因为它是一个不可变的类文件对象,可以使用Blob本身的slice方法,对文件本身进行切片。使用nodejs读取文件流,并对流进行切片合并等操作,就需要用到Buffer对象,可对文件流进行切片,并合并。
2023-08-12 16:40:29 1516
原创 element-ui的el-table,使用sortablejs改造成可拖拽排序
element-ui的el-table,使用sortablejs改造成可拖拽排序。
2023-05-27 11:29:32 220
原创 Vite+Vue+Electron环境搭建
electron简单来说就是对html的一种封装,所以我们先来搭建vue的开发环境,这里使用vite,也可以使用vue-cli来快速搭建。
2022-10-29 17:38:15 3134 2
原创 btoa和atob在nodejs中应该怎么写?
btoa 方法是将字符串进行base64编码atob 方法是将已进行base64编码的字符串进行解码// 对字符串进行base64编码let res = btoa('123')console.log(res) // MTIz// 对base64编码进行解码res = atob(res)console.log(res) // 123btoa 和 atob两种全局方法在nodejs环境中也是可以使用的,但也是为了旧版 Web 平台 API 兼容,在新代码是最好不要使用,因为有可能
2022-04-18 18:49:04 5303
翻译 在React18中使用createRoot代替render
在React18中使用createRoot代替renderimport * as ReactDOMClient from 'react-dom/client'; ReactDOMClient.createRoot(/*...*/); ReactDOMClient.hydrateRoot(/*...*/);什么是 root?root就是指向React渲染dom树的一个最上层的数据结构。在旧的API中,root是不透明的,因为我们将它连接到DOM元素,并通过DOM节点访问它,从来不暴露给用
2022-04-16 09:26:34 3824
原创 npm install 常用参数说明
描述npm install 是用来安装包和相关的依赖包的,如果存在package-loc文件,或是 shrinkwrap文件,yarn.lock文件,依赖包的安装将被其锁定,如果存在多个,则优先级如下:npm-shrinkwrap.json package-lock.json yarn.lock命令npm install [<@scope>/]<pkg>npm install [<@scope>/]<pkg>@<tag&g...
2022-04-14 14:56:37 5933
原创 npm exec 命令详细说明
npm exec命令是用来从本地或远程npm包中运行命令的。npm exec -- <pkg>[@<version>] [args...]npm exec --package=<pkg>[@<version>] -- <cmd> [args...]npm exec -c '<cmd> [args...]'npm exec --package=foo -c '<cmd> [args...]'# 别名: npm..
2022-04-12 22:30:43 1636
原创 学习esbuild构建工具
简介既然要学习如何使用esbuild,就说明已经知道,esbuild号称是打开了前端构建工具性能的新时代,最新流行的Vite也是使用esbuild进行了构建依赖。上图是使用不同的构建工具,构建10个three.js副本的bundle,包括sourcemap和minify压缩等操作,可以看出很明显差距。主要特点有哪些?不使用缓存进行快速构建 ES6和CommonJS模块 ES6模块的TreeShaking JavaScript和Go的API 支持TypeScript和JSX语法..
2022-04-12 11:04:03 1397
原创 如何在VScode工具中配置eslint代码检查并动态提示
ESLint 作为ECAMScript和JavaScript 代码识别检查工具,为我们在开发过程中提供了很大的帮助,也为我们在多人协作编程的时候,提供了统一的代码风格限制方式,减少了我们在多人编写并提交同一个文件的时候,尽量减少冲突的出现次数。如果只是一个人书写代码,也能为我们提供很好的代码规范。尽量在项目初始阶段就使用代码检查、代码风格的规范插件工具。使用npm安装ESLint首先是安装eslint的插件包npm install eslint --save-dev然后我们可以使用命令
2022-04-08 21:06:22 4766
原创 TypeError: this.cliEngineCtor is not a constructor,webstorm和eslint的版本纠结
在webstorm里使用eslint的时候,会提示 TypeError: this.cliEngineCtor is not a constructor ,这样的一个错误,知道应该是版本的错误,但具体版本怎么区别,eslint的版本和webstorm的版本
2022-04-01 11:00:06 8466 2
原创 一段代码,js动态创建脚本和样式
1、动态创建引入外部脚本function loadScript(url){ var script = document.createElement('script') script.type = 'text/javascript' script.src = url document.body.appendChild(script)}2、动态创建页面内脚本function loadScriptCode(code){ var codeNode = doc
2022-03-28 22:07:31 861
原创 一段代码,nodejs使用past-time将日期转换成昨天、今天、明天
这里使用 past-time 插件。npm i past-timeconst pastTime = require('past-time')let date = new Date()date.setMinutes(10)date.setSeconds(2)for (let i = 0; i < 12; i++) { let t1 = pastTime(date, {awaysShort: false, format: 'YYYY-MM-DD hh:mm:ss'})
2021-12-03 10:00:23 331
原创 flutter入坑,Expanded child isn‘t defined
在使用idea进行flutter开发的时候,会发现文档上明明有的一些参数,在开发工具中却显示红色提示。这个时候我们就需要看一下,flutter使用的版本是不是太低了,因为flutter1和flutter2的版本有很大的不同。升级flutter后,还需要在idea中,改变Dart的版本支持,只需要改变上图的路径就可以了。...
2021-08-19 17:21:10 2141
原创 小程序和H5页面如何实现图片的瀑布布局
瀑布布局使用绝对定位的形式,这里使用waterfall-js来获取计算后的图片项的位置大小等信息,可以看到最终的效果图,示例代码可以参考https://gitee.com/orz365/waterfall-js可以看到,图片上的图片等列的显示,都是不等高的,对于这种像流水一样的布局,可以称为瀑布流的布局,对于不同大小的图片,这种布局方式是一种不错的选择。我们使用一种js插件,waterfall-js插件,我们只要传入我们要展示的图片列表信息,它可以很快的计算出我们要展示的图片大小,并将图片的大.
2021-07-27 09:29:04 508
原创 Canvas学习,用Canvas画五子棋并进行简单判断输赢
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>五子棋</title> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=0"> <styl...
2021-06-17 11:13:16 527 1
原创 grunt-babel中如何去掉use strict严格模式
InstallFor Babel 7.x and grunt-babel v8npm i --dev grunt-babel @babel/core @babel/preset-envFor Babel 6.x and grunt-babel v7$ yarn add --dev grunt-babel@7 babel-core babel-preset-env
2021-06-02 15:25:14 698
原创 build.gradle配置文件与Groovy闭包语法之间的关系
gradle是一个基于Ant和Maven的概念的自动化构建工具,它是使用Groovy语言来声明项目设置,同时也增加了Kotlin的语言的DSL。gradle的配置文件与Maven的xml配置相比看上去非常的简洁,gradle的配置文件是基于Groovy语言来书写的,先来看一下简单的Java的gradle配置文件。plugins { id 'java-library' }repositories { mavenCentral() }dependencies { .
2021-05-12 10:47:26 351
原创 使用mp-cloud-http在koa2中操作微信云开发数据库
微信小程序云开发提供了 HTTP API 访问云开发资源,mp-cloud-http对http请求的api进行简单的封装,方便调用。安装使用npmnpm install mp-cloud-http例子const HttpMpCloud = require('mp-cloud-http')const cloud = require('wx-server-sdk') // 微信开发的sdk,用于条件参数的生成// 参数let env = '环境id', appid =
2021-04-27 14:44:35 227
原创 使用ffmpeg命令行剪切视频音频,并对视频进行优化
有时候需要对视频或音频进行剪辑,但又不想安装打开剪辑工具,这个时候就可以用到ffmpeg命令来进行简单的音视频的剪切、转MP3等工具。ffmpeg -i 源视频.mp4 -strict -2 -vf scale=640:360 -profile:v main -b:v 75k -b:a 64k 输出视频.mp4其中的参数可以简单了解一下-b:v 视频编码-b:a 音频编码-profile:v main 设置其中编码率要根据实际情况进行更改。如果只是想将视频转换成mp3音频,也可
2021-04-27 14:42:06 672
原创 微信小程序码createQRCode、getUnlimited返回的图片的二进制buffer数据怎么转换成图片
在微信小程序的API开发文档中,提供了两个函数方法,那就是wx.base64ToArrayBuffer和wx.arrayBufferToBase64,这两个方法是用来将base64编码和二进制Buffer编码进行互转的,我们在利用fs来写本地文件的时候,写入的就是二进制编码,所以有的时候就需要将base64处理成buffer。const base64 = 'CxYh'const arrayBuffer = wx.base64ToArrayBuffer(base64)const arrayBuff
2020-12-10 09:18:16 6778 2
原创 使用node-ffmpeg将m4a转换为mp3
首先需要先安装我们需要的npm包ffmpeg。npm install ffmpeg在ffmpeg的方法中,提供了一个方法 fnExtractSoundToMP3 ,使用这个方法可以视频或是音频转换为mp3格式。直接上代码:const ffmpeg = require('ffmpeg')const process = new ffmpeg('m4a文件绝对或相对路径.m4a');process.then(function (video) { console.log(video
2020-08-11 17:36:35 4558 3
原创 ueditor跨域上传远程图片文件
Resource interpreted as Document but transferred with MIME type application/json: "http://localhost:2000/user/ueditor/upload?action=uploadimage".
2020-07-28 11:22:08 406
原创 微信小程序分享朋友圈限制多多
千呼万唤shi出来,在我渐渐淡忘了微信小程序可以分享朋友圈后,它又终于可以分享朋友圈了,但现在还只是测试版本,现在只针对Android平台开放,后续会对ios开放。分享朋友圈定义的函数:onShareTimeline()基础库 2.11.3 开始支持,低版本需做兼容处理。本接口为 Beta 版本,暂只在 Android 平台支持。现在想要将小程序分享到朋友圈,需要设置允许“发送给朋友”,并且定义分享朋友函数Page.onShareAppMessage和分享朋友圈函数Page.onSha.
2020-07-23 10:09:45 2341
原创 js中json对象如何动态设置键值key来赋值
在开发中,后台传给前端的数据结构都是固定的,前端只要根据固定的key值来获取对象中的数据值就可以了。有时候页面需要对象数据也只需要最简单的定义对象属性的方法就可以了。比如说:var obj = {}// 第一种方法obj.name = 'cssjs.cn'// 第二种方法obj['age'] = 99obj['address'+'work'] = '南京' 这里要说一下第三种方法,也是es6中支持的一种方法,但现在对于开发方式众多前端开发来说,es6的语法已经可以用在了开发当中了。
2020-07-23 09:38:25 10906 1
原创 比较常用的几个富文本编辑器,CKeditor、KindEditor、TinyMCE、Simditor
CKeditor有4和5两个版本在维护,版本5支持模块开发,可以动态的加载需要使用的模块,CSDN也在使用,对图片的操作很方便,可定制图片手动缩放、优化等。TinyMCE本文更新时最新版本为v1.4.3.3,更新时间为2016年5月18日。Ueditor本文更新时最新版本为v1.4.3.3,更新时间为2016年5月18日。KindEditor本文更新时最新版本为v4.1.11,更新时间为2016年3月31日。Simditor本文更新时最新版本为v2.3.28,更新时...
2020-07-18 09:29:29 3939
原创 Docker 中文命令手册
命令 描述 docker attach 连接到正在运行中的容器 docker build 通过Dockerfile构建一个镜像 docker builder 管理builds docker checkpoint 管理checkpoints docker commit 从容器创建一个新的镜像 docker config 管理 Docker 配置 docker container
2020-07-06 13:16:45 788
原创 docker search的使用详解
描述搜索镜像用法docker search [OPTIONS] TERM选项--automated:弃用,只列出自动构建类型的镜像 --filter , -f:基于给定条件过滤输出 --format:使用模板格式化显示输出 --limit:Max number of search results ,默认值25 --no-trunc:禁止截断输出 --stars , -s:弃用,只显示收藏数不小于几颗星的镜像,移到--filter中使用实例搜索镜像名中包含...
2020-07-06 10:49:42 11366
转载 docker exec命令中的command参数有哪些可以进入shell命令行
Linux 内核最初由芬兰黑客 Linus Torvalds 开发,后来他组建了团队,Linux 内核由这个团队维护。GNU 组织开发了很多核心软件和基础库,例如 GCC 编译器、C语言标准库、文本编辑器 Emacs、进程管理软件、Shell 以及 GNOME 桌面环境等。VIM 编辑器由荷兰人 Bram Moolenaar 开发。Windows、Mac OS、Android 等操作系统不一样,它们都由一家公司开发,所有的核心软件和基础库都由一家公司做决定,容易形成统一的标准,一般不会开发多款功
2020-07-02 09:42:40 1602
原创 mysql通过mysqldump来备份数据库
1、备份命令格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --database 数据库名 > 文件名.sql例如: mysqldump -h 192.168.1.100 -p 3306 -uroot -ppassword --database cmdb > /data/backup/cmdb.sql2、备份压缩导出的数据有可能比较大,不好备份到远程,这时候就需要进行压缩格式:mysqldump -h主机名 -P端口 -u用户名 -p密码 --datab
2020-06-29 17:48:06 287
原创 ueditor如何改变图片大小等比缩放
缩放图片大小是在插件fiximgclick中,可以直接搜索fiximgclick或updateTargetElement来寻找下面的代码。8个角都可以进行等比缩放updateTargetElement: function () { var me = this; // 拿到图片的原始大小 var o_width = me.target.naturalWidth; var o_height = me.target.naturalHeight; // 计算出原始图.
2020-06-23 12:38:20 2661
原创 ueditor复制粘贴不带域名的本地图片时会自动加上域名
在使用ueditor上传图片到服务器时,有时候会返回不带域名的方式展示图片,再次进行复制剪切粘贴当前图片时,ueditor会自动带上当前环境的域名端口等信息。如何不让ueditor加上本地域名信息呢,一个解决办法就是让图片再次上传。找到ueditor的远程图片抓取事件回调catchremoteimage。这段标红的函数代码就表示所粘贴的图片是否是测试的,如果是测试的图片(比如本地图片等),都不会再次进行上传,我们只需要将return true 改成 return false 就可以将本地图片或是
2020-06-19 12:11:41 1125 1
原创 如何使用Node调试工具进行断点调试代码
想要使用node的调试工具,你首先要有Chrome浏览器,因为Chrome是Node官方的调试工具。当前工具版本,仅供参考node版本 v11.12.0npm版本6.14.5老版本的Node调试就不学了,只学新版本,也就是Node8及以后的版本如何使用调试工具,使用node --help看到调试的用法讲解如下。--inspect[=[host:]port] 指定域名或端口进行调试 (default: 127.0.0.1:9...
2020-06-19 11:54:30 1234
原创 为什么sequelize连接数据库查询时间字段时总是多8个小时?
在使用sequelize连接mysql数据库时,有一个datetime类型的字段,查询到前台时总是多了8个小时,这肯定是时区转换的问题了。但数据库和电脑的时区都是东8区的,没有问题,也就是说sequelize在取得时间的时候可能做了什么转换。在查sequelize的api文档时发现,还有一个timezone的时区参数需要配置,默认值是"+00:00",这个参数就是在数据库的日期转换到javascript的日期时用的。当我们使用sequelize连接数据库时,还会使用SET TIMEZONE设定时区,所以
2020-06-12 16:23:54 1774
原创 一段代码,koa如何使用koa-router-cache来缓存路由数据
koa-router-cache 可以用来缓存路由数据信息,可以使用内存或是redis进行数据缓存,对于内容页面来说,可以将页面缓存在内存中,以减少不必要的数据库请求。koa-router-cache 使用的还是koa的插件生成方法,所以需要使用koa-convert转换成支持kao2的函数。下面是使用内存级别的缓存,想使用redis可以直接参考koa-router-cache的文档进行配置。// 配置使用路由请求缓存const convert = require('koa-convert'
2020-06-09 16:00:06 838 1
原创 一段代码,nodejs的koa集成ueditor的上传图片文件功能
前置条件首先需要配置koa-body来拿到上传文件的内容,可以参考:https://blog.csdn.net/lw001x/article/details/106565449使用ueditor这里就直接拿官网的demo代码上来意思一下。<!DOCTYPE HTML><html lang="en-US"><head> <meta charset="UTF-8"> <title>ueditor demo&l
2020-06-09 12:45:34 283
原创 一段代码,vue如何使用photoswipe
使用npm安装photoswipenpm i photoswipe编辑photoswipe的vue组件<template> <!-- 这段html代码,是用来显示图片弹出层的,是由photoswipe提供的 --> <!-- Root element of PhotoSwipe. Must have class pswp. --> <div class="pswp" tabindex="-1" role="dialog" a.
2020-06-08 17:47:43 941 5
HTML5 Canvas核心技术源码技术代码
2022-03-27
PHP从入门到精通第二版
2013-03-10
EDiary3.2绿色版
2012-12-06
graphviz-2.28.0(for XP)
2012-09-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人