经常做上传功能的朋友们都知道,一般还需要做一个实时预览功能,一般都是通过FileReader.readAsDataURL来转换为base64来实现。其实还有一个更简洁的API URL.createObjectURL,它可以直接生成一个临时可访问的链接,然后直接使用这个链接即可。 1、URL.createObjectURL() URL.createObjectURL() 静态方法会创建一个 DOMString,其中包含一个表示参数中给出的对象的URL。这个 URL 的生命周期和创建它的窗口中的 document 绑定。这个新的URL 对象表示指定的 File 对象或...
系统及软件版本:win10+集成显卡+Adobe Premiere Pro CS6+H.264编码视频。 解决方法:显卡设置中选择以“高性能”模式运行PR即可。
操作步骤如下: 使用win+R快捷键唤出“运行”,输入regedit打开注册表编辑器 按照路径\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings展开 在Settings里面,右键新建一个DWORD(32位)值,重命名为FlightSettingsMaxPauseDays 双击新建的这个参数,基数选择为十进制,然后在数值数据里面填写如4000,点击确定 最后在win设置里面找到Windows更新,在里面找到暂停更新的选项,本来...
谷歌浏览器更新到最新版本后,开发工具中的Network网络类型筛选默认被折叠,操作起来极其不友好。那要怎么把它恢复呢? 如图,先点击右上角的设置图标进入设置面板中。 然后切换到“Experiments”,在“Filter”筛选框中输入“network”,可以看到“Redesign of the filter bar in the Network Panel”默认被勾选。 此时我们只需要把它取消勾选,然后重新打开开发面板,就能发现熟悉的它又回来了。
经常使用el-input组件的朋友们都知道,当使用其文本域功能时,在输入框中敲回车的行为是换行。 那么问题来了,某些场景下,要使回车行为触发自己另外的事件(比如对话场景中的“发送”,此时“换行”功能也要托付给另外的按键,例如ctrl+enter键),该如何操作呢? 我们可以通过监听el-input的keydown事件来处理,栗子如下: <el-input ref="inputRef" v-model="questionStr" type="textarea" placeholder="输入问题,发送 [Enter]/换行 [Ctrl(...
js自定义多字段排序
[ 2023/11/18, 887阅, 0评 ]
某些场景下,需要在前端实现将数组中的数据按照多个字段进行排序,Array实例内置的sort方法只能实现按照单个字段的排序。 多字段同时排序在后端很好实现,直接order by field1 asc, field2 asc, field3 desc… 在js中可以通过扩展sort方法来实现多个字段的同时排序: const items = [ { name: 'linc', age: 28, num: 1234 }, { name: 'linc', age: 28, num: 12345 }, { name: 'kiki', age: 20, num...
一个基于vue2的h5项目,被嵌套在安卓APP和iOS APP中使用。因为某些原因无法在webview中使用缓存,也无法使用cdn方式。 在经过分包、按需加载、代码清理、压缩资源文件、减少并发请求等常规手段优化后,网络较差的情况下较长的白屏时间仍然很尴尬。于是在index.html中加上了默认loading动画效果,这样用户在加载完入口文件后就可以直接看到动画,待vue初始化完成时再关闭loading动画,体验更佳。 辣么问题来了,在PC和Android设备上进行测试,都能达到预期效果。但是在iOS设备上,不管是 Safari 还是基于 iOS的WebView中,ind...
TypeScript中enum枚举类型的常用姿势
[ 2023/04/08, 4604阅, 0评 ]
1、转换为字面量的联合类型 1.1、数字枚举 enum Test1 { red, green, yellow, } type KeyTest1 = keyof typeof Test1 // "red" | "green" | "yellow" type ValTest1 = `${Test1}` // "0" | "1" | "2" type StrToNum<Str> = Str extends `${infer Num extends number}` ? Num : Str type NumValTest1 = StrToN...
有时候我们的开源项目需要同时发布到github和gitee等多个平台,如果每个平台都去单独提交推送显然是很费时费力的,那么能不能一次推送到多个不同的平台呢?答案当然是可以的。 假如已有github的https://github.com/aaa/bbb.git和gitee的https://gitee.com/aaa/bbb.git仓库 首先git clone git@github.com:aaa/bbb.git到本地(github经常被墙,使用SSH方式好一些) 然后进入本地该仓库的文件夹,右键打开小乌龟的设置面板 然后切换到“Gi...