Ruby on Rails 7重新调整了对JavaScript的支持

380 阅读2分钟

Ruby on Rails 7重新调整了对JavaScript的支持

Rails 7在生产版本中取消了对Node.js和Webpack的要求,同时支持NPM和ES模块导入。

Ruby on Rails 7是网络应用程序框架的最新版本,现已推出生产版本。这次更新采用了全栈式的网络开发方法,支持JavaScript的进步。

12月15日发布的Rails 7利用浏览器对ECMAScript 6 JavaScript标准和ECMAScript模块的支持,广泛采用HTTP/2和用于导入JavaScript模块的import maps标准。它为开发者提供了一种 "无节点 "的前端开发方法,同时仍然提供对NPM包和现代JavaScript的访问。Rails 7在前端用Hotwire的Turbo和Stimulus取代了TurboLinks和Rails UJS。

鉴于新的默认值,大多数Rails应用将不需要Node.js。开发人员可以使用他们喜欢的JavaScript捆绑器,因为不再需要Webpack了。对于依赖Node的CSS捆绑器也采取了同样的方法;Rails 7文件只需要一个编译好的application.css文件。可以使用Tailwind或Bootstrap等捆绑器。

Rails 7.0指南可在guide.rubyonrails.org找到。Rails 7.0发布说明也可以在项目网站上找到。Ruby on Rails 7的其他改进:

  • 加密属性已被添加到Active Record中,使应用程序能够在传统的静态和在途覆盖之外提供工作时的加密。通过这一改进,提供了一个额外的安全层。
  • 通过异步查询加载,两个不相关的查询可以通过一个控制器动作同时运行。
  • Zeitwerk代码加载器取代了const_missing 方法。
  • Spring应用程序的预加载器不再是默认开启的,因为除了最大的应用程序之外,更快的计算机已经使其成为不必要的。