Remix 是一个由 React Router 开发团队所开发的基于 React 和 Node 的全栈框架,以解决开发者在用 React 开发时面临的一些棘手问题。
最新的1.16.0
版本稳定了一些 CSS 功能,还包含了新的remix dev
服务器的重大改变,以及修复了一些错误。与此同时,Remix 开发团队还透露,Remix 2.0 版本即将发布。
CSS Modules/Vanilla Extract/CSS Side-Effect
1.16.0 版本稳定了对 CSS Modules、Vanilla Extract 和 CSS side-effect 导入的内置支持,这些功能以前只能通过 future 标志(future.unstable_cssModules
、future.unstable_vanillaExtract
、future.unstable_cssSideEffectImports
)获得。
PostCSS
1.16.0 版本通过remix.config.js
中新的postcss
选项稳定了内置的 PostCSS 支持。因此,future.unstable_postcss
选项也被废弃了。postcss
选项默认为false
,但当设置为true
时,如果postcss.config.js
存在,就可以使用 PostCSS 处理所有 CSS 文件。
Tailwind
1.16.0版本通过remix.config.js
中新的tailwind
选项稳定了内置的 Tailwind 支持。因此,future.unstable_tailwind
选项也被废弃了。
tailwind
选项默认为false
,但是当设置为true
时,如果安装了tailwindcss
,将在你的 CSS 文件中启用对 Tailwind 函数和指令的内置支持。
开发服务器重大变化
1.16.0 版本包含了对新开发服务器的重大改进,可以通过remix.config.js
中的future.unstable_dev
标志启用。Remix 的开发服务器现在将你的应用服务器作为一个可管理的子进程来启动。这使您的开发环境尽可能地接近生产环境,同时也意味着 Remix 开发服务器与任何应用服务器兼容。
开发服务器将:
- 强制要求
NODE_ENV=development
,如果之前被设置为其他内容,则发出警告 - 每当你的 Remix 应用代码发生变化时,都会重建你的应用
- 只要重建成功,就会重新启动应用服务器
- 处理实时重载和 HMR + Hot Data Revalidation
App Server 协调
为了管理你的应用服务器,开发服务器需要被告知你的应用服务器目前正在使用哪种服务器构建。通过让应用服务器发送一个 "I'm ready!"的消息,并将 Remix 服务器的构建哈希值作为有效载荷。
这在 Remix App Server 中是自动处理的,并通过调用官方 Remix 模板中的broadcastDevReady
或logDevReady
为你设置。
如果您没有使用 Remix App Server,并且你的服务器没有调用broadcastDevReady
,则需要在应用服务器启动和运行后调用它。
更多详情可查看:https://github.com/remix-run/remix/releases/tag/remix%401.16.0