Laravel Mix 4 发布

发布日期:作者:

Laravel Mix 4 Released image

上周 Jeffrey Way 发布了 Laravel Mix v4,这是 Laravel Mix 的下一个主要版本。Mix 4 使用 Webpack 4,并附带其他不错的改进。以下是来自 Release v4.0.0 的 Mix 4 中新功能的高级列表。

  • 编译速度更快
  • npm 安装速度更快。
  • 升级到 webpack 4
  • 升级到 vue-loader 15
  • 升级到 Babel 7
  • 自动供应商提取。如果您在没有参数的情况下调用 mix.extract(),所有供应商依赖项(* 来自 node_modules/ 的任何包)将自动提取。很不错!
  • 可以提供 CSS 缩小(通过 cssnano)选项
  • 可以按每次调用的方式将 PostCSS 插件传递给 mix.sass/less/stylus()。这意味着您可以根据需要为每个 mix.sass() 调用提供 * 唯一的 PostCSS 插件。
  • 将 JS 优化/缩小从 Uglify 切换到 Terser。
  • 从 node-sass 切换到 Dart Sass。虽然这会带来编译时间略微增加的成本,但好处是 npm 安装速度更快、更可靠。
  • 改进了 Babel 配置合并策略。您现在可以通过在项目根目录中创建 .babelrc 文件来覆盖或调整通过 Mix 提供的任何默认 Babel 插件和预设。

在幕后,Mix 从 node-sass 更改为 dart-sass。支持“基本相同”,但在升级时您可能会注意到一些编译警告。您可以通过安装 node-sass 包并配置实现来手动更改回原来的。

mix.sass('resources/sass/app.sass', 'public/css', {
implementation: require('node-sass')
});

除了 4.0 版本外,Jeffrey 还 将 laravel/laravel 仓库更新到 v4。我建议您阅读他的 PR 笔记以了解对几个额外 NPM 依赖项的需求以及添加到与 Laravel 一起提供的 Vue <example-component/>.default 属性。

Vue.component('example-component', require('./components/ExampleComponent.vue').default);

特别注意,vue-loader v13 需要 .default,“...如果您使用 CommonJS 风格的 require 来导入 ES 模块。”

Jeffrey 对 laravel/laravel 中所需的额外 sass 相关模块的解释有助于我理解他添加它们的理由。

过去,我们包含了所有 Sass 依赖项,无论用户是否希望为他们的应用程序进行 Sass 编译。在 v4 中,Mix 现在按需安装这些依赖项 - 仅当用户使用 mix.sass() 请求时才安装。但是,因为 laravel/laravel 包含 Sass 样板,所以我在这里添加了它们以跳过额外的下载步骤。

Mix v4 可以根据调用 mix.sass() 的配置文件自动按需安装所需的依赖项,这很酷。

了解更多

确保查看完整的 v4 版本说明,以帮助您将现有的 Laravel 项目升级到 Mix v4。非常感谢 Jeffrey 为 Laravel(和其他项目)提供这种出色的资产管道工具,以便快速开始使用您喜欢的所有前端工具!

Paul Redmond photo

Laravel 新闻的撰稿人。全栈 Web 开发人员和作家。

分类
Cube

Laravel 新闻稿

加入 40k+ 其他开发者,不错过任何新的提示、教程等。

Laravel Forge logo

Laravel Forge

轻松创建和管理您的服务器,并在几秒钟内部署您的 Laravel 应用程序。

Laravel Forge
Tinkerwell logo

Tinkerwell

Laravel 开发人员必备的代码运行器。使用 AI、自动完成和本地和生产环境的即时反馈进行调试。

Tinkerwell
No Compromises logo

绝不妥协

Joel 和 Aaron,两位来自 No Compromises 播客的经验丰富的开发人员,现在可以为您的 Laravel 项目雇用。 ⬧ 固定费率为 7500 美元/月。 ⬧ 没有冗长的销售流程。 ⬧ 没有合同。 ⬧ 100% 退款保证。

绝不妥协
Kirschbaum logo

Kirschbaum

提供创新和稳定性,以确保您的 Web 应用程序取得成功。

Kirschbaum
Shift logo

Shift

运行旧版 Laravel?即时、自动化的 Laravel 升级和代码现代化,让您的应用程序保持新鲜。

Shift
Bacancy logo

Bacancy

为您的项目配备经验丰富的 Laravel 开发人员,拥有 4-6 年的经验,每月仅需 2500 美元。获得 160 小时的专业知识和 15 天的无风险试用。立即安排通话!

Bacancy
Lucky Media logo

Lucky Media

立即获得幸运 - Laravel 开发的理想选择,拥有超过十年的经验!

Lucky Media
Lunar: Laravel E-Commerce logo

Lunar: Laravel 电子商务

Laravel 电子商务。一个开源包,为 Laravel 带来了现代无头电子商务功能的力量。

Lunar: Laravel 电子商务
LaraJobs logo

LaraJobs

官方 Laravel 工作板

LaraJobs
SaaSykit: Laravel SaaS Starter Kit logo

SaaSykit: Laravel SaaS 启动工具包

SaaSykit 是一个 Laravel SaaS 启动工具包,它包含运行现代 SaaS 所需的所有功能。支付、漂亮的结账、管理面板、用户仪表板、身份验证、现成的组件、统计数据、博客、文档等等。

SaaSykit: Laravel SaaS 启动工具包
Rector logo

Rector

您无缝 Laravel 升级、降低成本和加速创新以取得成功的合作伙伴

Rector
MongoDB logo

MongoDB

通过 MongoDB 和 Laravel 的强大集成增强您的 PHP 应用程序,使开发人员能够轻松高效地构建应用程序。支持事务、搜索、分析和移动用例,同时使用熟悉的 Eloquent API。了解 MongoDB 的灵活、现代数据库如何改变您的 Laravel 应用程序。

MongoDB
Maska is a Simple Zero-dependency Input Mask Library image

Maska 是一个简单的零依赖输入掩码库

阅读文章
Add Swagger UI to Your Laravel Application image

将 Swagger UI 添加到您的 Laravel 应用程序

阅读文章
Assert the Exact JSON Structure of a Response in Laravel 11.19 image

在 Laravel 11.19 中断言响应的准确 JSON 结构

阅读文章
Build SSH Apps with PHP and Laravel Prompts image

使用 PHP 和 Laravel 提示构建 SSH 应用程序

阅读文章
Building fast, fuzzy site search with Laravel and Typesense image

使用 Laravel 和 Typesense 构建快速、模糊的网站搜索

阅读文章
Add Comments to your Laravel Application with the Commenter Package image

使用 Commenter 包将评论添加到您的 Laravel 应用程序

阅读文章