V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  changwei  ›  全部回复第 2 页 / 共 89 页
回复总数  1768
1  2  3  4  5  6  7  8  9  10 ... 89  
@liuqiongyu889 你是如何确定用了 use client 的组件是没有 SEO 的?你有用 Google 的 Search Console 验证过吗?我用最新版 next.js 14 是可以的,而且查看使用 use client 的页面组件的 HTML 源代码也是能看到有做服务端渲染。

如果要实现客户端局部刷新,那么 RSC 里面就只是单纯的获取数据就好了,把真正的页面组件写在 RCC 里面,然后再用 useSWR 的 fallback 属性预先注入来自服务端的数据,后续请求都由 SWR 发起,这样就是和传统的 pages router 一样的效果,既不会损失性能又可以用到 app router 的 layout 功能保持住 layout 部分的状态。(况且我不觉得 RSC 那一定点 JSON 真的会损失多少性能,我们真实上线的用 next.js 做的书单品项目录展示类网站,一页 30 本书籍左右的内容,RSC 在 gzip 之后才不到 5kb ,加上 HTTP2 的长连接,传输 5kb 数据基本可以忽略不计)
客户端渲染:Next.js 一样可以用啊,加上 use client 指令之后对应的页面就是首次访问是 SSR ,然后用 next/link 的 Link 组件点击或者 useRouter 的 push 也是客户端渲染,路由体验一点也不差啊

缓存数据:这不是后端输出 API 时需要在 header 设置强制缓存和协商缓存的吗?然后 vercel ( next.js 的母公司)本身也有推出 useSWR 啊,stale while revalidate 的理念就是缓存+后台刷新,体验也不差啊

BBF:BBF 为什么要跳过? Next.js 的 CSR 服务端组件直接就是 BBF ,少了一层单独的 BBF 代码,维护性好了很多

自由度:看你怎么取舍,软件开发没有银弹,我之前也试过不用任何框架,手动用 react-dom/server 处理 SSR ,手动用 import()+React.lazy 做路由分割,手动用 webpack 打包精准控制每个 plugin 和 loader 参数以及公共 vendor 包的分割,然后发现自己花了大量时间处理工具链问题,不如 next.js 官方的默认配置来的好用,甚至性能还有所降低。举个例子,如果用了 css module ,你自己不花一番功夫配置各种 ts 插件,在 VSC 或者 WebStorm 等主流开发工具里面是无法做到 F12 点击 css module 的 className 名称后自动跳转到原始 css 文件对应的 className ,如果你看过 next.js 官方的源码你会发现他做了非常多的类似的优化以及各种方便开发者的组件

目前来看 remix 最大的优势是开发阶段用的是 vite ,hot-reload 速度比 next.js 的打包后提供预览的方式要快很多。我昨天刚好在看 turbopack 的文档,里面有提到 next.js 为什么不用 vite 或者浏览器暴露原生 ESM ,https://turbo.build/pack/docs/why-turbopack

我之前也在 twitter 提到过 remix 和 next.js 的差别 https://x.com/changwei1006/status/1819012445643645186 。怎么选择就看你本人对 Vercel 和 W3C 标准化组织的哪个更有信心和期待。next.js 的理念就是目前前端标准进步速度太慢,这种环境下做一些激进的优化很困难,干脆我自己用 Next.js ,next/image ,next/font ,SWR ,RSC 来解决路由,图片,字体,缓存,交互等方面的性能,而 remix 是尽可能使用前端标准下的各种方案做优化。

目前来看我个人还是觉得 Vercel 的影响力,技术实力和在用户体验方面的推动力要比 W3C 大很多,所以我会选择 next.js ,这也是大部分开发者的观点和选择。
面向对象的写法问题主要在于会把同一个业务逻辑的代码分散到多个 lifecycle ,而 hook 刚好解决了这个问题
至于 useState 这种内置 hook 只是因为 function 的写法没办法调用 this.setState 而创立的
Java 这些传统面向对象编程语言其实有用 annotation+AOP 的方式来解决业务逻辑必须要分散到多个生命周期的问题,而 JavaScript 这边的 decorator 好像迟迟没有纳入 ECMAScript 标准,除了 nest.js 和 mobx 以外比较少有框架在用“非标准”的 decorator 特性
169 天前
回复了 Sayuri 创建的主题 程序员 什么 SMTP 服务商比较好?
很好奇自建 mail 服务器要怎么做呢?云服务商好像普遍都封了 SMTP 的 25 端口。
自己有独立 IP 的情况下,如果发多了垃圾邮件好像还是一样会被运营商封 25 端口吧?!
@lee88688 antd5 确实用起来卡卡的,感觉明显没有其他的 React UI 组件快,但是这确定是 css-in-js 导致的的问题吗?另外有点好奇 tailwind 维护有什么问题嘛?我目前只在公司项目小范围用过 tailwind 所以还没发现什么坑,不知道深度使用后可能会有哪些问题呢?
我知道 sentry.js 可以记录用户端的 console.log 结果,但是这是外国服务所以似乎没有支持微信小程序,不太清楚是否有国内的类似厂商做微信小程序的 SDK
机票其实有省钱办法,比如找转机,或者先去香港后再从香港机场坐飞机出发去东南亚国家会更便宜
另外也想问问其他朋友一般是怎么找特价机票的?
299 天前
回复了 softerzhangyu 创建的主题 加密货币 ustd 理财靠谱吗
年化收益超过 10%的理财项目要做好本金全部丢失的准备
完全可以,没有任何问题,我目前就是 expo+windows 开发。然后安卓真机和 ipad 跑 expo app 调试,我不懂任何原生开发也不用 bara react native 模式开发,只会基于 expo sdk 的开发模式,目前 all in expo 完全没有任何问题。
只是如果要本地编译可能需要开 macos 虚拟机或者用 github actions 的 macos 镜像,否则就用 eas build 也行(我帮学校做的项目,基本上发版频率是一个月一次,用免费版 eas 就足够了,只是 utc+8 时区在半夜编译需要排队 10 到 30mins ,东八时区白天工作时间基本不排队,因为这时候北美开发者已经下班,所以在线编译也还能接受,可能是这玩意儿外国人用的多)
337 天前
回复了 heroisuseless 创建的主题 分享创造 还在用 JS?过来看看 GS
目前对于 js 改造最好的语言我觉得是 rescript ,原 po 可以参考一下他的设计
很好奇公司名称是什么?我以为都是华为思科诺基亚之类的大厂才会自研核心网,没想到还有小公司做这个的。
arxiv
dp 和 hdmi 的协议不太一样,dp 关了显示器或者显示器进入休眠节能模式都相当于拔线
你这种需求得全换 hdmi ,或者买个转接器
2023-09-09 11:34:09 +08:00
回复了 sunmoon1983 创建的主题 MySQL Mysql 是用分区表,还是直接分表?
不知道你 3000W 行的表空间用多大,不到 5GB 的话可以试试看 TiDB Serverless ,0 成本启动,免费使用 5GB 存储容量,开箱即用
2023-07-09 17:40:07 +08:00
回复了 guguji5 创建的主题 程序员 2023 年了,应该学 flutter 还是原生 Swift kotlin(本人前端)
@guguji5 expo 开发我从头到尾没花过一分钱啊,你是什么地方需要花钱呢?
2023-07-08 03:36:23 +08:00
回复了 guguji5 创建的主题 程序员 2023 年了,应该学 flutter 还是原生 Swift kotlin(本人前端)
如果是 react 前端团队并且没有任何原生 app 开发经验建议直接使用 react native + expo 这套方案,几乎不需要任何原生开发经验就能开发跨平台完整 app ,expo 的编译流程也是在其官方的 CI 平台上进行,构建产物传送到应用商店也是 expo 全自动进行,只是送审需要你自己填写版本号和更新记录等等,意味着你本地甚至不需要配置任何 Android SDK 或者 iOS xcode 开发环境,也不需要阅读太多原生 APP 开发文档,非常方便友好。

下面这个 APP 就是我用 react-native 0.71 + expo 48 开发的,里面有原生 View 实现主要界面,也有套 react-native-webview ,也有用 react-native-render-html 直接把 html 渲染到 View 中,也有 expo-linking 直接在内置 chrome 浏览器打开网页等等各种渲染方式,目前除了 react-native-render-html 这套方案可能需要对一些特殊 html 标签进行一些微调和转换以外都没发现太大问题,性能问题暂时没发现(可能是因为我用的都是小米旗舰),最近几个版本的 rn 官方也有更新 JS 引擎以及把 react 升级到 18.2 版本,理论上性能也有一定提升,你可以直接打开下面的链接下载亲自试用一下就知道。

https://play.google.com/store/apps/details?id=tw.edu.ntust.library.app
https://apps.apple.com/app/id6444852934
2023-07-06 15:07:17 +08:00
回复了 mannixSuo 创建的主题 程序员 有没有推荐的开源在线 office 文档编辑
@sm0king 請問有哪些坑?可以分享一下嘛?
2023-06-02 12:58:24 +08:00
回复了 linshudery 创建的主题 酷工作 [深圳][腾讯音乐]全民 K 歌团队招前端开发啦
全民 K 歌居然还有在用 rn 的技术栈嘛?
我虽然自己给学校做的 APP 仍然在用,但是发现自从 airbnb 等公司宣布放弃 rn 之后整个生态都变差了,比如很多 rn 相关的 library 有 bug 后出现 issue 和 stackoverflow 上面好几个人报同样的错误但是几个月了也没作者回复的情况,不知道腾讯这边是有内部维护很多 rn 的轮子嘛,还是只是用 rn 做部分的 screen(activity)
1  2  3  4  5  6  7  8  9  10 ... 89  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1340 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 44ms · UTC 23:42 · PVG 07:42 · LAX 15:42 · JFK 18:42
Developed with CodeLauncher
♥ Do have faith in what you're doing.