2022-08-03 1484 阅读 实用干货 🌋 🔀 如何打一个既支持cjs,又支持esm的npm包? 模块化是一个老生常谈的问题了,打包工具层出不穷。那么,如何利用这些打包工具去打出既支持cjs,又支持esm的npm包呢。这篇文章不涉及概念,是一些打包实测。tsctsconfig.jsontsconfig-esm.jsonpackage.jsoncjstsconfig.json{"compilerO
2022-07-21 1389 阅读 实用干货 🌋 🥢 10个有用的自定义钩子vue.js Vue是我使用的第一个JS框架。可以说,Vue是我进入JavaScript世界的第一道门之一。目前,Vue仍然是一个很棒的框架。随着compositionAPI的出现,Vue只会有更大的发展。在这篇文章中,我将介绍10个有用的自定义钩子,让我们的代码更加好看。useWindowResize这是一个基
2022-07-17 1594 阅读 值得一看 🔍️ 🌅 文件太多忘记写export * from 'xx'怎么办?自动生成它吧 文件太多忘记写export怎么办?我们在写一个组件库或者npm包的时候,会遇到这种情况:需要导出多个组件或多个文件里的方法,然后会有一个入口文件index.js,里面写满了export*from‘./xx.js’这样的语句。可以看一下element-plus里面的代码,element-plus导出N
2022-07-13 1441 阅读 实用干货 🌋 🏫 Vue3.2 setup语法糖、Composition API、状态库Pinia归纳总结 一、文件结构Vue2中,<template>标签中只能有一个根元素,在Vue3中没有此限制<template>//...</template><scriptsetup>//...</script><stylelang="scss"sc
2022-07-07 1375 阅读 实用干货 🌋 ⚡ 前端开发者应该养成的开发好习惯 1.合理命名合理命名,这里的命名包括变量名,方法名,文件名,git的提交信息,分支名等等。起的名字应该让其他开发者一看就知道你的方法是用来干什么的,这个文件是讲什么的,你这批提到的代码具体内容更新了些什么东西,新建了这个分支又是用来干嘛。当然也不一定是为了给别人看,就比如我在看我自己一年前写代码的时
2022-07-02 1963 阅读 值得一看 🔍️ 🌪️ Promise永久Pending状态造成内存泄漏 摘要若**promise**一直保持pending状态,将会在内存中保存相应的上下文,无法释放,这可能导致内存泄漏。尽管调用promise的react组件已经销毁,由于promise的状态未更新,导致保存React组件上下文不会释放,造成内存占用。通过Promise.race设置超时的方式并不会解决