laravel mix有什么用

laravel mix用于管理前端任务,它是一款前端任务自动化管理工具,可使用工作流的模式对制定好的任务依次执行;Mix提供了简洁流畅的API,让开发者能够为Laravel应用定义Webpack编译任务,可以轻松地管理前端资源。

laravel mix有什么用

本教程操作环境:windows7系统、Laravel6版,DELL G3电脑。

laravel mix是什么?有什么用?

Laravel Mix 一款前端任务自动化管理工具,使用了工作流的模式对制定好的任务依次执行。Mix 提供了简洁流畅的 API,让你能够为你的 Laravel 应用定义 Webpack 编译任务。Mix 支持许多常见的 CSS 与 JavaScript 预处理器,通过简单的调用,你可以轻松地管理前端资源。

默认文件和文件夹结构

默认 Sass 文件在 resources/assets/sass/app.scss  中(文件的内容是完全一样的),而默认的 JS 文件在 resources/assets/js/app.js(因为文件是完全相同的,所以想要学习更多关于 Vue 在 5.3 中的基础结构,可以查看 Matt Stauffer 写的 5.3 的前端结构 这一帖子)。

如果你深入到 app.js 中引用的 bootstrap 文件( resources/assets/js/bootstrap.js ),你会看到我们使用Axios 而不是 Vue-Resource 来设置 X-CSRF-TOKEN( Vue-Resource 在 2016 年之后将不再工作)。

如果你在 Mix 的项目上运行 npm run dev,可以看到:

file

默认情况下,我们生成的文件的位置与 Elixir 相同:public/css/app.css  和 public/js/app.js 。

主要 Mix 方法

正如你所见,你可以轻松的使用 Mix 处理 Sass 和 JS。Sass,显而易见,运行 Sass 文件,并将其输出为 CSS。用  JS 方法支持 ECMAScript 2015 语法、编译 .vue 文件、针对生产环境压缩代码以及对 JavaScript 文件进行其他处理。

还可以用 .less 方法将 Less 编译为 CSS:

mix.less('resources/assets/less/app.less', 'public/css');

用 combine 方法将文件组合在一起:

mix.combine([    'public/css/vendor/jquery-ui-one-thing.css',    'public/css/vendor/jquery-ui-another-thing.css'], 'public/css/vendor.css');

用 copy 复制文件或目录:

mix.copy('node_modules/jquery-ui/some-theme-thing.css', 'public/css/some-jquery-ui-theme-thing.css');mix.copy('node_modules/jquery-ui/css', 'public/css/jquery-ui');

与 Elixir 不同,Source Maps 默认情况下是关闭的,可以在 webpack.mix.js 中调用以下方法来开启:

mix.sourceMaps();

默认情况下 Mix 会以系统通知的方式告知你编译结果,如果不希望它们运行,可以使用 disableNotifications() 方法禁用。

Mix.manifest.json  和 缓存清除

熟悉 Elixir 的人可能会注意到上面的输出图像有一点与 Elixir 不同:Mix 正在生成一个开箱即用的清单文件 public/mix-manifest.json。 当然,Elixir 也会生成清单文件:public/build/rev-manifest.json,与 Mix 直接生产不同,它只会在确定启用了缓存清除(版本控制)的功能时生成它。

这些清单文件是用来映射前端文件与已经版本化处理的前端文件副本,例如: /js/app.js 与 /js/app-86ff5d31a2.js 之间的映射。有了这个文件就可以在 HTLM 用简单的引用指向该引用的版本化文件。例如 。

不像 Elixir,即使你不使用缓存清除,Mix 都会生成这个文件,但它也仅仅只是一个导向地图:

{  "/js/app.js": "/js/app.js",  "/css/app.css": "/css/app.css"}

对于以前使用 Elixir 的用户来说,另一个有趣的变化是:你的构建文件现在最终在正常的输出目录,而不是单独的构建目录,所以你版本化的 JS 文件,将出现在 public/js/app-86ff5d31a2.js。

要在 Mix 中启用缓存清除,只需在 Mix 文件中附加 .version():

mix.js('resources/assets/js/app.js', 'public/js')    .sass('resources/assets/sass/app.scss', 'public/css')    .version();

这比传递实际文件名要简单得多,就像在 Elixir 中一样。

mix() 帮助

正如上面提到的,你要使用 mix() 来代替 elixir() 引用你的资源,运行方式完全相同。 但是有一点,用 Mix 的话,要删除 Laravel 模板中默认的这些引用行:

...

用下面这种方式替换它们:

...

记住,这个函数只是在 mix-manifest.json  中查找字符串并返回映射的构建文件。用来保证当你清除了缓存时,它懂得去加载默认的那个文件。

代码拆分

Webpack 是对许多人来说很令人兴奋的部分,因为它提供了使代码结构化的智能能力。我还没能完全弄明白 webpack 的所有功能,Mix 也没把所有功能都打包支持,例如:tree-shaking。但它确实使你的自定义代码(它可能会经常更改)与你的供应商代码(这不应该)区分,使得用户在每次推送新版本时刷新所有供应商代码的可能性更小。

要利用这个特性,你需要使用 extract() 函数,它将你定义一个给定的库或者模块集合提取到一个单独的构建文件名为 vendor.js:

mix.js('resources/assets/js/app.js', 'public/js')    .extract(['vue', 'jquery']);

在这种情况下,Mix 生成了三个文件:public/js/app.js 、public/js/vendor.js  和第三个 Webpack 特定文件 public/js/manifest.js。 为了运行顺利,得按照以下的顺序引入这三个文件:


如果清除了缓存,并且更改了应用自定义的代码, vendor.js  文件仍会缓存,也只有应用自定义的代码才会被清除缓存,这样你的网站会加载得更快。

自定义 Webpack 配置

如果你有兴趣添加自己的自定义 Webpack 配置,只需要传递你的 Webpack 配置:

mix.webpackConfig({    resolve: {        modules: [            path.resolve(__dirname, 'vendor/laravel/spark/resources/assets/js')        ]    }});

(上面这个例子只是从文档复制粘贴来的~ 你真的有兴趣就自己去了解哈~)

顺便一提

说点有趣的东西吧,我想这或许能在 Webpack 文件中加点什么。 如果你想只在生产环境下复制点什么,你怎么会这样做?

会这么问是因为我发现在 Node 环境对象中,我们可以用 process.env 去访问。可以检查任何值,包括系统上的任何全局环境变量。这个发现可能可以让我们去做点其他有趣的事情,比如说有条件地检查 process.env.NODE_ENV  中的值:

if (process.env.NODE_ENV == 'production') {    mix.webpackConfig({ ... });}

但是在阅读源代码后,我发现 NODE_ENV 不是主要的检查。相反,是用了一个带有 inProduction  标志的配置对象去做这件事情。 这个文档里没有写,因此请谨慎使用,但你可以更新 Webpack 文件顶部的导入,然后使用该配置对象:

const { mix, config } = require('laravel-mix');if (config.inProduction) {    mix.webpackConfig({ ... });    }

默认依赖关系

你可以查看 package.json  并查看每个项目包含的依赖项列表。 记住,这些是由默认的 app.js 和 bootstrap.js  来引用的,你可以删除 app.js  和 package.json  中的引用,并重新运行 npm install ,当然删除引用并不会删除源文件。

Axios(一个简单且漂亮的 HTTP 客户端)

Bootstrap Sass(由默认的 app.scss  文件来引入 Bootstrap 样式)

jQuery

Lodash( 比 Underscore 更好)

Vue 2

小结

Laravel Mix 是一个代替 Laravel Elixir 的构建工具。 具有与 Elixir 几乎相同的API,却是基于 Webpack 而不是 Gulp。             

【相关推荐:laravel视频教程】

以上就是laravel mix有什么用的详细内容,更多请关注php中文网其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/66009.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月12日 04:19:58
OPPO手机拍摄月亮技巧,让你拍出震撼的夜景照片
下一篇 2025年11月12日 04:22:01

相关推荐

  • 以laravel-admin为例详解Laravel单用户登录

    以laravel-admin为例详解Laravel单用户登录以laravel-admin为例详解Laravel单用户登录以laravel-admin为例详解Laravel单用户登录以laravel-admin为例详解Laravel单用户登录

    本篇文章给大家带来了关于laravel的相关知识,其中主要介绍了关于单用户登录的相关问题,下面一起来看一下以laravel-admin为例单用户登录的相关内容,希望对大家有帮助。 【相关推荐:laravel视频教程】 单用户登录这个术语大家都听说过, 为什么要单用户登录? 比如: 视频网站, 如果一…

    2026年9月30日 • 用户投稿
    000
  • Apache 2.4环境中正确配置.phps文件源码访问权限

    本文旨在解决Apache 2.4服务器上访问.phps文件时遇到的403 Forbidden错误。核心解决方案在于,对于现代Apache版本,应使用Require all granted指令替换旧的Order Deny,Allow语法,以确保正确授权对PHP源代码文件的访问,并详细指导配置步骤,避免…

    2026年9月30日
    100
  • 极速漫画官网直达链接_极速漫画手机版在线登录入口

    极速漫画官网直达链接_极速漫画手机版在线登录入口极速漫画官网直达链接_极速漫画手机版在线登录入口极速漫画官网直达链接_极速漫画手机版在线登录入口极速漫画官网直达链接_极速漫画手机版在线登录入口

    极速漫画官网直达链接是m.manhuagui.com,该平台资源丰富,涵盖多种题材,支持多端同步与离线下载,提供流畅的阅读体验。 小编推荐一、☞☞☞☞点击极速漫画官网直达链接☜☜☜☜☜ 小编推荐二、☞☞☞☞点击极速漫画手机版在线登录入口☜☜☜☜☜ 极速漫画官网直达链接在哪里?这是不少网友都关注的,接…

    2026年9月30日 • 用户投稿
    000
  • 牧场物语风之繁华集市各地区解锁条件及功能介绍 各地区怎么解锁

    牧场物语风之繁华集市各地区解锁条件及功能介绍 各地区怎么解锁牧场物语风之繁华集市各地区解锁条件及功能介绍 各地区怎么解锁牧场物语风之繁华集市各地区解锁条件及功能介绍 各地区怎么解锁牧场物语风之繁华集市各地区解锁条件及功能介绍 各地区怎么解锁

    《牧场物语 风之集市》中包含五个可探索区域,其中牧场、微风小镇与集市会场在游戏开始时即已开放。山区需完成村庄集市任务后次日解锁,而骑乘公园则会在第一年夏季的14日正式开启。 牧场 解锁方式:初始自带 ・为主角居住地所在地图・可在区域内建造房屋、耕种田地、饲养动物等 微风小镇 解锁方式:初始开放 ・可…

    2026年9月30日 • 用户投稿
    100
  • 夸克浏览器在线直达 夸克网页版免费开放入口

    夸克浏览器在线直达入口为https://www.quark.cn/,该网页版集成AI超级框、多模态搜索、去广告优化及云端存储等功能,支持跨设备同步与个性化设置,提供高效智能的浏览体验。 夸克浏览器在线直达入口在哪里?这是不少网友都关注的,接下来由PHP小编为大家带来夸克网页版免费开放入口,感兴趣的网…

    2026年9月30日
    400
  • PHP实时输出如何实现多语言支持_PHP实时输出多语言内容

    实现实时输出多语言内容需关闭输出缓冲并启用自动刷新,结合语言数组动态输出。通过设置ob_implicit_flush(true)、使用翻译函数__t()根据$langCode返回对应文本,并在每次echo后调用flush(),确保中英文提示即时显示。需配置服务器禁用代理缓冲,设置UTF-8编码,避免…

    2026年9月30日
    200
  • 夸克AI官方主页智能平台 夸克AI智能助手官网直达访问链接

    夸克AI官方主页智能平台是https://www.quark.cn/,用户可通过该官网访问AI搜索、网盘存储、智能写作及多端同步等核心功能,实现高效便捷的跨设备使用体验。 ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜ 夸克AI官方主页智能平…

    2026年9月30日
    200
  • AO3中文版怎么访问_ArchiveofOurOwn官网中文直达方法

    AO3中文版怎么访问_ArchiveofOurOwn官网中文直达方法AO3中文版怎么访问_ArchiveofOurOwn官网中文直达方法AO3中文版怎么访问_ArchiveofOurOwn官网中文直达方法AO3中文版怎么访问_ArchiveofOurOwn官网中文直达方法

    答案:访问AO3中文版需进入官网后将鼠标悬停于右上角“Language”并选择“中文(简体)”或“中文(繁體)”,页面即刻切换为中文,随后可正常登录或注册账户,使用搜索框与筛选功能查找作品,操作逻辑与原版一致。 立即进入“☞☞☞☞点击ao3中文版官网地址☜☜☜☜☜”; 立即进入“☞☞☞☞点击Arch…

    2026年9月30日 • 用户投稿
    200
  • 怎么用豆包AI帮我生成HTTP客户端代码 HTTP客户端代码的AI生成指南

    怎么用豆包AI帮我生成HTTP客户端代码 HTTP客户端代码的AI生成指南怎么用豆包AI帮我生成HTTP客户端代码 HTTP客户端代码的AI生成指南怎么用豆包AI帮我生成HTTP客户端代码 HTTP客户端代码的AI生成指南怎么用豆包AI帮我生成HTTP客户端代码 HTTP客户端代码的AI生成指南

    使用豆包ai生成http客户端代码的关键在于提供清晰具体的指令。1. 明确请求方式和目标url,例如指定get或post请求及对应地址;2. 提供查询参数、请求头及认证信息,如token或headers;3. 指定编程语言及框架,如python的requests、node.js的axios等;4. …

    2026年9月30日 • 用户投稿
    100
  • 夸克浏览器入口网址 夸克网页版免费在线使用

    夸克浏览器入口网址是https://www.quark.cn/,该平台集成AI搜索、文档处理、网盘服务与多端同步功能,支持图片识别、语音搜索及智能拼页,提供去广告优化与极简浏览体验。 夸克浏览器入口网址在哪里?这是不少网友都关注的,接下来由PHP小编为大家带来夸克浏览器网页版免费在线使用相关信息,感…

    2026年9月30日
    200
  • 俄罗斯搜索引擎入口 俄罗斯搜索引擎官网入口链接

    俄罗斯搜索引擎入口 俄罗斯搜索引擎官网入口链接俄罗斯搜索引擎入口 俄罗斯搜索引擎官网入口链接俄罗斯搜索引擎入口 俄罗斯搜索引擎官网入口链接俄罗斯搜索引擎入口 俄罗斯搜索引擎官网入口链接

    俄罗斯最主要的搜索引擎是Yandex,官网为yandex.ru(俄文版)和yandex.com(国际版),其在俄语搜索、本地化服务及科技生态上占据主导地位。 1、立即进入“☞☞☞☞点击俄罗斯搜索引擎入口☜☜☜☜”; 2、立即进入“☞☞☞☞点击俄罗斯搜索引擎官网入口链接☜☜☜☜”; 俄罗斯搜索引擎入口…

    2026年9月30日 • 用户投稿
    100
  • 海棠书屋免费无弹窗网址 海棠书屋免费无弹窗全文阅读小说

    海棠书屋提供免费无弹窗阅读体验,资源涵盖成长、情感等主题,界面简洁流畅,支持滑动翻页与快速加载,内置分享及收藏功能,营造安静温馨的阅读环境。 海棠书屋免费无弹窗全文阅读小说,这是许多文学爱好者都在寻找的阅读体验,接下来由PHP小编为大家带来海棠书屋的详细信息,感兴趣的读者一起随小编来瞧瞧吧! 直达入…

    2026年9月30日
    100
  • vivo浏览器网页版入口 vivo浏览器官方网页版入口

    vivo浏览器网页版入口 vivo浏览器官方网页版入口vivo浏览器网页版入口 vivo浏览器官方网页版入口vivo浏览器网页版入口 vivo浏览器官方网页版入口vivo浏览器网页版入口 vivo浏览器官方网页版入口

    vivo浏览器网页版入口在vivo官网(https://www.vivo.com.cn/),用户可在此下载适配的安装包,进入后可进行字体调节、开启夜间模式、查看已缓存视频及设置广告拦截。 vivo浏览器网页版入口在哪里?这是不少网友都关注的,接下来由PHP小编为大家带来vivo浏览器官方网页版入口,…

    2026年9月30日 • 用户投稿
    100
  • php 换行符问题

    php 换行符问题php 换行符问题php 换行符问题php 换行符问题

    处理php换行符问题的背景 公司的一个业务要求用户上传CSV文件,这些文件内的数据是以逗号(,)分隔的,每一行表示一条数据。业务代码会读取这些数据,并根据特定的业务规则将其入库。然而,有用户反馈说,尽管他们上传的CSV文件符合规范,但上传后系统提示数据为空。 问题定位 在拿到用户的CSV文件后,我们…

    2026年9月30日 • 用户投稿
    100
  • DedeCms错误警告页面

    DedeCms错误警告页面DedeCms错误警告页面DedeCms错误警告页面DedeCms错误警告页面

    页面出现异常:/ 错误提示:数据库连接失败,可能是由于数据库密码不正确或数据库服务端发生故障,请核查相关配置后重新尝试。 1、 利用FlashFXP等FTP工具建立站点连接 2、 进入网站主目录,在 htdocs-data 文件夹中定位到 common.inc.php 文件,并将其下载至本地计算机。…

    2026年9月30日 • 用户投稿
    900
  • 手机怎么看AO3中文版_AO3移动端网页版访问指南

    手机怎么看AO3中文版_AO3移动端网页版访问指南手机怎么看AO3中文版_AO3移动端网页版访问指南手机怎么看AO3中文版_AO3移动端网页版访问指南手机怎么看AO3中文版_AO3移动端网页版访问指南

    首先在手机浏览器输入ao3官网地址访问,页面会自动适配移动端;接着点击右上角“Language”选择“中文(简体)”切换语言;最后可通过添加主屏幕快捷方式、开启深色模式、调整字体大小等方式优化阅读体验。 手机怎么看ao3中文版?这是不少网友都关注的,接下来由php小编为大家带来ao3移动端网页版访问…

    2026年9月30日 • 用户投稿
    200
  • 极速漫画官方登录主页_极速漫画在线漫画阅读网

    极速漫画官方登录主页_极速漫画在线漫画阅读网极速漫画官方登录主页_极速漫画在线漫画阅读网极速漫画官方登录主页_极速漫画在线漫画阅读网极速漫画官方登录主页_极速漫画在线漫画阅读网

    极速漫画官方登录主页是https://m.manhuagui.com/,该平台资源丰富,涵盖热血、冒险、奇幻等多种题材,持续更新连载与完结作品,支持原创内容发布;阅读体验流畅,界面简洁,支持横竖屏切换,加载迅速,提供个性化设置;用户可注册账号同步进度,使用收藏夹、评论互动及关键词搜索等功能,便捷实用…

    2026年9月30日 • 用户投稿
    900
  • Sublime实现数据库读写分离策略配置_适合大型高并发系统数据管理

    Sublime实现数据库读写分离策略配置_适合大型高并发系统数据管理Sublime实现数据库读写分离策略配置_适合大型高并发系统数据管理Sublime实现数据库读写分离策略配置_适合大型高并发系统数据管理Sublime实现数据库读写分离策略配置_适合大型高并发系统数据管理

    sublime text可通过配置文件、插件和中间层逻辑辅助实现数据库读写分离。1. 在配置文件中明确区分主库和从库连接信息,使用清晰命名并借助语法高亮提升可读性;2. 安装db browser for sqlite、advancednewfile等插件提升数据库开发效率;3. 在应用层编写逻辑根据…

    2026年9月30日 • 用户投稿
    200
  • picrew捏脸工具入口地址_picrew中文捏脸链接分享

    picrew捏脸工具入口地址_picrew中文捏脸链接分享picrew捏脸工具入口地址_picrew中文捏脸链接分享picrew捏脸工具入口地址_picrew中文捏脸链接分享picrew捏脸工具入口地址_picrew中文捏脸链接分享

    picrew捏脸工具入口地址是https://picrew.me/,用户可直接访问官网使用各类头像制作功能,无需注册即可编辑发型、五官、服饰等元素,支持导出静态图片或动态GIF,还可通过分享链接、评论互动等方式与其他用户交流。 picrew捏脸工具入口地址在哪里?这是不少网友都关注的,接下来由PHP…

    2026年9月30日 • 用户投稿
    100
  • 炫书网全集小说免费看_炫书网TXT下载直达站

    炫书网全集小说免费看_炫书网TXT下载直达站炫书网全集小说免费看_炫书网TXT下载直达站炫书网全集小说免费看_炫书网TXT下载直达站炫书网全集小说免费看_炫书网TXT下载直达站

    炫书网全集小说免费看入口是https://www.xsw.la/,该网站资源丰富,涵盖多种题材类型的小说,持续更新连载作品并提供经典完结小说合集,支持多作者作品集中展示;阅读体验优化,界面简洁清晰,文字排版适配多端,内置夜间模式和字体调节功能,章节跳转流畅且加载速度快;支持TXT格式一键下载和批量下…

    2026年9月30日 • 用户投稿
    100

发表回复

登录后才能评论
关注微信