前端 36
-
04 2023年04月
jsPDF生成PDF介绍
一、介绍jsPDF是一个浏览器端生成PDF文件的库,内容方面可以添加文本、图片、形状等,并可以对其设置样式,例如:颜色、大小、位置等,还可以将DOM直接转换为PDF内容,并实现文本自动分页,结合定位功能还可以实现页眉页脚。二、基础使用1. 创建实例import jsPDF from "js
-
06 2022年12月
使用pnpm workspace搭建monorepo
背景:之前的项目告一段落了,最近开始写一些组件库,主要是上面想统一现有系统的UI风格,所以写一些通用组件来节省时间,之前的私有npm也搭起来了,就开干了。一、简介monorepo是一种将多个项目存储在同一个存储库中的版本控制策略,对应到本篇要介绍的内容就是将多个npm package存储在一个git
-
14 2022年11月
React Native系列(六)- 踩坑合集
一、Android Release包无法发起HTTP请求因为项目只要求安卓版本,所以只打了安卓的APK,其中遇到点问题,故记录一下这个是因为安全性考虑,安卓目前默认只允许https,如果需要使用http需要在android/app/src/AndroidManifest.xml中的applicati
-
25 2022年09月
React Native系列(五)- 动画Animated
一、简介React native中实现动画是依赖的Animated库,主要侧重于输入和输出之间的声明性关系,以及两者之间的可配置变换,此外还提供了简单的 start/stop方法来控制基于时间的动画执行。二、与CSS 动画的区别CSS实现动画一般有两种,第一种是@keyframes结合animati
-
14 2022年09月
React Native系列(四)- 一些插件
本想给这些功能插件每个单独写一篇详细的使用教程,但感觉使用的也都是些基础功能,故在此记录下这些插件,以及对应的简单使用代码渐变色组件(linear-gradient)- react-native-linear-gradient,RN没有提供官方的渐变色样式我是真没想到的,这个组件感觉就是一个带背景的
-
14 2022年09月
React Native系列(三)- 状态栏定制(沉浸式状态栏)
接下来几篇内容信息密度不会太高,会是一些简单的小功能,这个系列的内容、顺序纯粹取决于我做项目时遇到的问题一、简介React native提供了StatusBar组件用于覆盖状态栏样式,在结合Navigation使用时,每个Screen都可以放置StatusBar组件,并且后放置的会覆盖先放置的,所以
-
07 2022年09月
React Native系列(二) - 路由配置
上一篇说到项目初始化配置,这一篇记录下Route和Store的用法一、技术选型根据官方文档的推荐,路由的库就直接选用React Navigation了;作为一个前端应用,那么基本的权限管控,登录和未登录页面区分开是最基本的,目前没有需要根据权限显示页面的需求,就暂不考虑,我习惯于将token等用户信
-
17 2022年08月
私有NPM仓库Verdaccio搭建
一、背景写业务代码时有时候会遇到,某个组件,可以在多个系统中使用,但是又能公开发布到NPM,每个项目里维护一份拷贝也很蠢,NPM虽然有提供Private服务,但毕竟收费,所以找了一圈开源方案,基本上都是用的这个Verdaccio,自己手头上也有服务器,就搭一个出来试试,后面再申请资源给组里搭一个。二
-
16 2022年08月
记一次JS 事件冒泡处理
背景:产品针对新功能提出了一个Radio嵌套Select的交互,实现过程中遇到一点小问题大致效果如下:代码也比较简单:<RadioGroup> <Radio> <Select> <Option v-for="valu
-
07 2022年07月
JS判断页面当前焦点
最近在整理补充之前项目的技术文档,回顾的过程中发现了一些小的知识点,顾记录下,以便后续查阅const focusElement = document.activeElement;通过上面上面的代码就可以获取到页面当前的焦点元素,焦点元素也可能是<select>元素 (menu) 或者一个
-
02 2022年06月
记一次canvas导出图片问题
背景:之前在系统中做了一个将dom导出图片的功能https://yukinoyukino.com/archives/dom导出为图片,本以为解决了跨域问题,但结果从灰度上到正式环境之后还是存在这个问题一、问题出现问题出现在这一行代码:const image = canvas.toDataURL('i
-
12 2022年05月
JS 剪切板 Clipboard API
背景: 最近遇到一个需求,需要展示一个键值的列表,并能点击复制按钮将Key值复制到系统的剪切板中(这个需求好像还挺常见的)一、简介Clipboard API提供系统剪切板的功能,其暴露于全局属性navigator.clipboard中,其包含write、read、writeText和readText
-
08 2022年04月
Vue项目国际化改造
背景:以前的项目要进行国际化改造...一、引入Vue-i18n安装vue-i18n如果是Vue2的项目,需要指定8版本,目前默认的稳定版本是9,是不支持Vue2的npm i vue-i18n@8.27.1 # 建议在npm找到最新的8版本号进行安装如果是Vue3的项目,则可以直接安装npm
-
08 2022年04月
-
29 2021年12月