SWC 初体验
前言如果让我尽快构建一个 React 应用,那么构建工具我会首选 Vite 而不是 CRA,如果要问为什么,那一定就是因为快,用 Vite 构建一个 React 项目要比 CRA 快非常多。
但我今天却发现了一个忽略已久的问题,在Select a variant: ›选项下有 JS、TS,还有 JS + SWC、TS + SWC,but what is SWC?
什么是 SWC?我们来看SWC 的 Github Repo,SWC (stands for Speedy Web Compiler) is a super-fast TypeScript / JavaScript compiler written in Rust.
SWC 是一个用 Rust 语言编写的超快的 TS/JS 编译器,是 Babel 的替代品。SWC 在单线程上比 Babel 快 20 倍,在四核上比 Babel 快 70 倍。
2021 年,kdy1(SWC 的作者)加入 Vercel,Next.js 也更积极的在推广 SWC,从 Next.js 12 开始,预设 compiler 就是使用 ...
Redux 学习记录
今天去面试被问到了如何管理复杂的状态,由于我只用过 Context API 管理账户登录这种需要跨组件的状态,这明显不满足复杂状态管理的需要,今天来正式学习一下 Redux。
记录一下 TypeScript 刷题体验
简单聊聊前端刷算法正式说之前,想先说说我自己的一些经历虽然我大学本科就是学计算机的,但是学的都是后端语言 C、C++、Java在刚刚接触前端开发的时候有很多问题都充满了疑惑
比如说,为什么我没法像后端语言那样简单的点击 IDE 的运行按钮,就让程序的输出结果显示在终端里?
为什么 JavaScript 只能依附于 html 文件,必须要用浏览器打开,用 Chrome 开发者工具进行 debug?
虽然我在学习 C++ 的时候,也会用 VS Code 来跑一些小项目,但是更多时候还是会使用高度集成的 IDE 写代码 —— Visual Studio 写 C++ 、IDEA 写 Java
如何使用 VS Code 调试 JS/TS 代码先聊聊 VS Code 自身的 debugger如果你点击了 VS Code 的 Debugger 工具,就会发现,你需要先创建 launch.json 文件来配置 Debugger,但是这个自带的配置其实很难用,最致命的点就是他并不会根据你打开的文件进行调试,而是创建的时候打开的是哪个文件就去调试那个文件,这是由于 json 设置的问题,虽然手动 ...
macOS npm install 一直需要 sudo 权限的问题
开门见山,直接说解决方案不要使用 Homebrew 安装 nvm,在nvm 官方文档中有提及:
Homebrew installation is not supported. If you have issues with homebrew-installed nvm, please brew uninstall it, and install it using the instructions below, before filing an issue.
使用官方提供的命令重新进行安装:
1curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
或者是:
1wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
错误类型一般会提示 code EACCES npm ERR! syscall open 或者是没有 mkdir 权限,有类似报错内容的按照官方文档重新安装 nvm ...
Mac 开发环境配置不完全指南
前言花了两天时间,把 Mac 的前端开发环境可算是配置好了,记录一下完整的流程,方便参考
按照我之前总结的 Todo 来看,有一些需要更正的地方:
Clash X 代理配置
修改默认终端为 zsh
安装 homebrew
安装 oh-my-zsh,配置终端颜色、主题
下载 vs code,登录,同步设置、扩展等
修改终端、vs code 代理设置
安装 nvm node 版本管理器
安装 node、git
安装 python 版本管理器、python
修改 npm、git 的代理端口
配置 git 的用户名和邮箱,配置 vs code 内的 git 扩展
全局安装 create-react-app、vite
首先是,现在 Mac 的默认终端就已经是 zsh 了,不需要手动更改其次,更换代理软件到 Clash Pro X,这个的功能更强大,具有“增强模式”的功能可以给一些不会默认被代理的程序加速。
接下来就开始吧!
开始配置代理设置由于众所周知的原因,不配置代理几乎很难完成编译环境的配置,这里不做过多讲解。
不过需要注意的是:
Clash X Pro 的下载不同于 Clash X, ...
Mac 前端开发配置总结
大概国庆后一周就要收到属于自己的 MacBook Pro 了,在前端开发这件事情上可以短暂脱离 Windows 的苦海了,现在还在借用女友的 Air……配置环境是一个麻烦但是不得马虎的事情,先写一些 todo 吧
一些新 Mac 到手后需要的设置
Apple id
下载 Chrome,登录,同步设置、扩展、历史、密码等
前端开发环境配置
修改默认终端为 zsh
安装 homebrew
安装 oh-my-zsh,配置终端颜色、主题
Clash X 代理配置
下载 vs code,登录,同步设置、扩展等
修改终端、vs code 代理设置
安装 nvm node 版本管理器
安装 node、git
安装 python 版本管理器、python
修改 npm、git 的代理端口
配置 git 的用户名和邮箱,配置 vs code 内的 git 扩展
全局安装 create-react-app、vite
可能会填的新坑
安装 NeoVim
安装 MangoDB
安装 WebStorm
配置 Ruby 开发环境
Vercel 项目绑定到自己的域名
今天成功的把 blog 绑定在了自己买的域名上,记录一下域名和服务器并不是一个概念,不可以混淆这里需要先区分一下:
1.网站是部署在服务器上的,比如说我把我的 blog 放在了 Vercel 上(其他云服务器同理),由云服务器托管着我的代码
2.域名是网站的代号,IP 地址长且无规律的数字对人来说有记忆困难,因此人们使用 DNS(域名解析服务)来将 IP 地址简化为人更容易记住的域名(就像 google.com),域名解析就像是一个电话簿,只需要记住对方的名字(域名),拨号的时候并不需要记住电话号码(服务器 IP 地址),只要先查询电话簿(使用 DNS)就可以了
前置条件这里我先假设你:
已经将自己的网站部署在了服务器上,如 Vercel、AWS、Azure 已经 xx 云等
已经购买了属于自己的域名,比如我在GoDaddy上购买了我的域名:mikolee.xyz
开始绑定服务器部分这里以 Vercel 为例:
在 Vercel 上打开部署好的 blog 项目
点击 Settings 进入设置界面
点击 Domains,进入域名设置界面
第一篇博客
这是我的第一篇博客,这里我会先测试博客的功能是否正常,测试主题切换是否成功一级标题二级标题三级标题正文粗体斜体代码高亮
点号
1
2
3
引用123
12//code blocksconsole.log("This is a JavaScript code block");
链接引用
分割线