
不可思议的前端
文章平均质量分 78
主要为前端开发过程中的一些奇淫巧技,涉及 React、Vue、Next.js、Remix 等前端框架
Willin 老王躺平不摆烂
付费咨询/顾问/兼职。To be Willin is to be willing.
欢迎在各社交平台交流学习。96 年起学习编程,现在主要使用:Node.js/Typescript,前后端架构设计团队管理皆略知一二。阿里云MVP,Node.js基金会成员(17-23),腾讯应急响应中心白帽子,诸多国际编程竞赛网站(如CodeWars、HackerRank)进过榜 Top 100……
展开
-
Tailwind CSS 初学者指南
Tailwind CSS 不是一个典型的 CSS 框架,它为您提供现成的组件,如按钮、卡片或导航栏。相反,它为您提供了一组低级实用程序类,您可以组合和自定义这些类,以直接在HTML中创建所需的任何设计。这是传统 CSS 框架:原创 2023-09-14 09:27:43 · 1400 阅读 · 2 评论 -
在 Next.js App目录中使用 Code Hike
接下来.js 13 在使用内容层和应用程序目录时遇到了一些问题,但此问题已在 Next.js 的 13.0.3 版本中修复。函数内部,我们传递下一个JS配置。如果要直接在目录中写入 MDX 文件,请确保在。完成此步骤后,您可以在项目中使用 MDX 文件,但还不能使用 Code Hike。然后还要安装下一个 mdx 插件、mdx 加载器和 Code Hike。在插件旁边,您可以传递一个配置对象。有了这个单独的组件,我们就可以使用Code Hike。,代码高亮提示我正在使用精彩的Code Hike库。原创 2023-09-12 14:45:10 · 237 阅读 · 0 评论 -
2023 年 Vue 最流行的动画库
Vue.js 因其简单性和灵活性而广受欢迎。Vue.js 以其创建流畅且引人入胜的动画视觉效果的能力而闻名。除了 Vue.js 内置的动画功能外,Vue 动画库还允许您创建自定义动画。为什么我们需要 Vue 动画库?它是一个专门为 Vue.js 应用程序设计的动画组件库。使用此库,您的 Vue.js 应用程序可以轻松展示引人注目的动画,而无需编写复杂的 CSS 或 JavaScript 代码。借助 Vue 的动画库,可以创建各种令人惊叹的效果,包括淡入、幻灯片、弹跳等。原创 2023-09-11 19:47:52 · 2348 阅读 · 0 评论 -
理解 React 服务器组件
在高层次上,React Server Components 是一个全新范式的名称。在这个新世界中,我们可以创建仅在服务器上运行的组件。这允许我们做一些事情,比如在我们的 React 组件中编写数据库查询!return ())}作为一个已经使用 React 多年的人,这段代码起初对我来说绝对是疯狂的。😅“但是等等!”,我的直觉尖叫着。“函数组件不能是异步的!而且我们不允许像这样直接在渲染中产生副作用!服务器组件永远不会重新渲染。原创 2023-09-08 17:21:20 · 1118 阅读 · 0 评论 -
Framer Motion 教程:创建 React 动画就这么容易
React 中的动画以及整个 Web 中的动画是随着时间的推移更改页面上 UI 元素的视觉状态的过程。视觉状态是什么意思?影响元素外观的任何属性:高度、形状、相对于其他元素的位置等。动画的核心思想是,随着时间的推移,您正在更改页面上某些内容的某些可见属性。有几种方法可以在 React 中创建动画,但它们都分为两大类:CSS 动画,通过应用 CSS 规则来更改视觉状态;以及JavaScript动画,它使用JavaScript来更改元素的属性。在这两个类别中,您可以从头开始实现动画,也可以使用库。原创 2023-09-04 10:12:41 · 1460 阅读 · 0 评论 -
Remix 和 Next.js 中实现依赖注入
Next.js 是一个 React 框架,它可以让你快速地构建服务器渲染的 React 应用程序。这是一个简单的 Next.js 依赖注入的示例。在实际应用中,你可能需要使用更复杂的解决方案,但是这个例子演示了如何使用。接下来,它将用户列表显示在一个简单的列表中。中,我们将服务包装在一个上下文中,并将其作为 props 传递给我们的组件。的 prop,该 prop 是用于传递所有依赖项的对象。中注入依赖项,然后将其作为 props 传递给任何组件。创建一个上下文对象。然后,在我们的组件中,我们可以使用。原创 2023-09-03 09:28:10 · 1092 阅读 · 1 评论 -
Cypress 前端 E2E 测试——手把手入门教程
注意一下,需要用根用户池登录,且最好关闭 MFA (没有接口支持)。产品环境用户池 ID 为。如获取登录 token。原创 2022-08-10 00:28:17 · 1104 阅读 · 0 评论 -
Docsify画图建模Mermaid插件支持
plugins//类似jQuery.ready初始化mermaid,禁用自动渲染mermaid.initialize({false});});//每个页面渲染完成后手动渲染mermaid图表mermaid.init(undefined,'.mermaid');});}];最后再补一张甘特图流程图序列图甘特图而且语法结构非常简单,值得推荐.font-size16px;fill#333;#552222;#552222;stroke。...原创 2022-07-19 11:23:55 · 1479 阅读 · 0 评论 -
Gatsby(Static/Dynamic + GraphQL)
官方网站: https://www.gatsbyjs.com即 SSR,服务器端渲染。本地前端开发环境,现在基本上都是 SSR 的。方便问题排查,性能调优。到了服务器上也是一样。相较于纯静态页面,动态页面性能上毫无优势可言。即便与动态技术相比(如 PHP之类的编程语言、使用 HTML 模板语言渲染等),也是差距极大。因为需要把模板渲染出 HTML 还没完,还需要构建虚拟 Dom。很多人说 SSR 的优点有首屏渲染快,但实际上纯静态网站做首屏优化更容易,而且能够更快。同时还有很多人说 SSR 另一个优点是可以原创 2022-07-11 19:32:48 · 227 阅读 · 0 评论 -
Cloudflare Worker 部署纯静态网站
安装 Wrangler CLInpm i @cloudflare/wrangler -g# 或者cargo install wrangler创建一个空白网站模板wrangler generate proj --siteref:文档: https://developers.cloudflare.com/workers/platform/sites/configuration修改好配置及静态网站内容后,使用命令行工具先进行预览,然后再发布。配置 Worker 路由以 Example原创 2022-01-10 13:53:00 · 2142 阅读 · 0 评论 -
阿里云 OSS + CDN 部署静态网站配置
创建 OSS Bucket读写权限需要改成公共读,然后进行创建(如果忘记配置了也可以进入设置里修改)。配置 OSS 支持 SPA 网站进入 Bucket 基础设置,静态页面部分。一般情况下按照以下配置:默认首页: index.html默认 404 页: 404.html子目录: 开通,并选择Redirect类型使用静态网站托管模式,需要绑定自定义域名,此时静态网站通过外网地址是无法访问的。创建 CDN 加速源站信息选择 OSS 对应域名。 根据需要选择加速区域,国内原创 2022-01-10 13:51:12 · 2435 阅读 · 0 评论 -
RxJS 基础入门
英文资源官方文档: https://rxjs.dev/guide/overview教程: https://www.learnrxjs.io/Learn RxJS operators and Reactive Programming principles: https://reactive.how/Animated playground for Rx Observables: https://rxviz.com/动画讲解: https://indepth.dev/posts/11原创 2022-01-10 13:22:31 · 844 阅读 · 1 评论 -
Nuxt3 离我们还有多远
本月, Nuxt.js 发布了 3.0 Beta 版本: https://v3.nuxtjs.org/ 支持了 Vue 3 和一些更多的特性。首先我们先来比较一下各个版本的区别。版本比较特性/版本Nuxt 2Nuxt BridgeNuxt 3稳定性???? 稳定???? 半稳定???? 不稳定性能???? 快✈️ 更快???? 最快Nitro 后端引擎❌✅✅ESM 支持???? 部分???? 较好✅TypeScript☑️ 可选原创 2022-01-09 13:40:09 · 914 阅读 · 0 评论 -
Promise、async/await 使用经验
Promise产生:改善 Callback Hell 问题什么样的方法可以用 Promise 重写例 1:mysql.query('SELECT 1 + 1 AS solution', function (err, rows, fields) { if (err) { throw err; } // 对查询结果进行操作 console.log('The solution is: ', rows[0].solution);});例 2:fs.readFile('myfi原创 2022-01-09 13:34:31 · 443 阅读 · 0 评论 -
Next.js 实用小技巧
i18n 国际化参考项目: https://github.com/vercel/next.js/tree/canary/examples/with-i18n-rosetta首先,是本地 i18n目录下存储翻译文件,可以使用 js/ts/json/yaml 等格式。这里以最复杂的 yaml 为例。// i18n/index.tsimport './index.d';import zh from './zh.yml';import en from './en.yml';export defau原创 2022-01-09 13:28:43 · 897 阅读 · 0 评论 -
由浅入深正则表达式
目录基础字符类字符集合 `[ABC]`否定集合 `[^ABC]`范围 `[A-Z]`点 `.`匹配任意 `[\s\S]`单词 `\w`非单词 `\W`数字字符 `\d`非数字字符 `\D`空白 `\s`非空白 `\S`Unicode 分类 `\p{L}`锚点开始 `^`结束 `$`单词边界 `\b`非单词边界 `\B`转义字符保留字符 `\+`八进制转义 `\000`十六进制转义 `\xFF`Unicode 转义 `\uFFFF`扩展 Unicode 转义 `\u{FFFF}`控制字符转义 `\cI`制表符原创 2021-12-27 13:07:53 · 3288 阅读 · 0 评论