Laravel利用gulp如何构建前端资源详解


Posted in PHP onJune 03, 2018

什么是gulp?

gulp是新一代的前端项目构建工具,你可以使用gulp及其插件对你的项目代码(less,sass)进行编译,还可以压缩你的js和css代码,甚至压缩你的图片,gulp仅有少量的API,所以非常容易学习。 gulp 使用 stream 方式处理内容。Node催生了一批自动化工具,像Bower,Yeoman,Grunt等。

gulp和grunt的异同点

易于使用:采用代码优于配置策略,Gulp让简单的事情继续简单,复杂的任务变得可管理。

高效:通过利用Node.js强大的流,不需要往磁盘写中间文件,可以更快地完成构建。

高质量:Gulp严格的插件指导方针,确保插件简单并且按你期望的方式工作。

易于学习:通过把API降到最少,你能在很短的时间内学会Gulp。构建工作就像你设想的一样:是一系列流管道。

引言

最近把自己主页前端代码进一步规范了,使用 npm 引入一些前端的资源库,在 Laravel 5.5 中使用 gulp 遇到一些坑。

mix.sass 无法直接使用 node_modules 文件夹里的,只能用 resource/assets/sass/app.scss 这个文件生成 css,然后和其他的 css 合并为一个文件。

mix.scripts 可以使用 node_modules 文件夹里的 js,并和自己的 js 合并为一个文件。

mix.copy 可以复制 node_modules 中的文件到指定的目录,比如字体。

mix.version 可以给合并后的文件增加版本号。

贴出我最终的配置如下:

elixir(function (mix) {
 mix.sass([
  'app.scss'
 ], 'public/css')
  .styles([
   './public/css/app.css',
   'style.css',
   'pill.css',
  ], 'public/css/site.css')
  .styles([
   './public/css/app.css',
   'cover.css',
  ], 'public/css/cover.css')
  .scripts([
   './node_modules/jquery/dist/jquery.min.js',
   './node_modules/bootstrap-sass/assets/javascripts/bootstrap.min.js',
   'scrollerup.js'
  ],'public/js/app.js')
  .copy([
   './node_modules/bootstrap-sass/assets/fonts/bootstrap/glyphicons-halflings-regular.woff',
   './node_modules/bootstrap-sass/assets/fonts/bootstrap/glyphicons-halflings-regular.woff2'
  ], 'public/build/fonts/bootstrap')
  .version([
   'public/css/cover.css',
   'public/css/site.css'
  ]);
});

以上代码出自我的 gulpfile.js 文件。

Laravel利用gulp如何构建前端资源详解

运行 gulp 命令,线上运行 gulp ?production.

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
PHP简介
Oct 09 PHP
解析php DOMElement 操作xml 文档的实现代码
May 10 PHP
php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法
Sep 28 PHP
php获得用户ip地址的比较不错的方法
Feb 08 PHP
php警告Creating default object from empty value 问题的解决方法
Apr 02 PHP
php使用pack处理二进制文件的方法
Jul 03 PHP
PHP实现生成透明背景的PNG缩略图函数分享
Jul 08 PHP
PHP之密码加密的几种方式
Jul 29 PHP
分享ThinkPHP3.2中关联查询解决思路
Sep 20 PHP
PHP面向对象程序设计之命名空间与自动加载类详解
Dec 02 PHP
PHP递归实现汉诺塔问题的方法示例
Nov 25 PHP
PHP标准库(PHP SPL)详解
Mar 16 PHP
PHP学习记录之数组函数
Jun 01 #PHP
PHP+MySQL实现输入页码跳转到指定页面功能示例
Jun 01 #PHP
PHP+MySQL实现模糊查询员工信息功能示例
Jun 01 #PHP
php post json参数的传递和接收处理方法
May 31 #PHP
PHP调用接口用post方法传送json数据的实例
May 31 #PHP
ThinkPHP5 验证器的具体使用
May 31 #PHP
php 截取中英文混合字符串的方法
May 31 #PHP
You might like
PHP的FTP学习(二)
2006/10/09 PHP
PHP 单引号与双引号的区别
2009/11/24 PHP
PHP操作Memcache实例介绍
2013/06/14 PHP
PHP判断指定时间段的2个方法
2014/03/14 PHP
11个PHPer必须要了解的编程规范
2014/09/22 PHP
tp5框架使用composer实现日志记录功能示例
2019/01/10 PHP
php实现微信公众号创建自定义菜单功能的实例代码
2019/06/11 PHP
Thinkphp 框架基础之源码获取、环境要求与目录结构分析
2020/04/27 PHP
js中哈希表的几种用法总结
2014/01/28 Javascript
jquery插件之定时查询待处理任务数量
2014/05/01 Javascript
jquery+css实现动感的图片切换效果
2015/11/25 Javascript
下一代Bootstrap的5个特点 超酷炫!
2016/06/17 Javascript
Google Maps基础及实例解析
2016/08/06 Javascript
bootstrap日期插件daterangepicker使用详解
2017/10/19 Javascript
vue-router 源码之实现一个简单的 vue-router
2018/07/02 Javascript
JavaScript实现的简单Tab点击切换功能示例
2018/07/06 Javascript
小程序实现五星点评效果
2018/11/03 Javascript
jQuery实现的简单日历组件定义与用法示例
2018/12/24 jQuery
详解在Node.js中发起HTTP请求的5种方法
2019/01/10 Javascript
微信小程序后台持续定位功能使用详解
2019/08/23 Javascript
layui 对弹窗 form表单赋值的实现方法
2019/09/04 Javascript
[01:03]PWL开团时刻DAY6——别打我
2020/11/05 DOTA
[01:20]PWL开团时刻DAY9——听说潮汐没用?
2020/11/10 DOTA
Python实现检测文件MD5值的方法示例
2018/04/11 Python
Django使用中间键实现csrf认证详解
2019/07/22 Python
Python使用微信接入图灵机器人过程解析
2019/11/04 Python
Flask框架搭建虚拟环境的步骤分析
2019/12/21 Python
python使用ctypes调用扩展模块的实例方法
2020/01/28 Python
欧尚俄罗斯网上超市:Auchan俄罗斯
2018/05/03 全球购物
What is view? why do we have view?
2012/06/22 面试题
厉行勤俭节约倡议书
2014/05/16 职场文书
生产车间标语
2014/06/11 职场文书
商铺消防安全责任书
2014/07/29 职场文书
师德标兵事迹材料
2014/12/19 职场文书
客房部经理岗位职责
2015/02/02 职场文书
提高系统的吞吐量解决数据库重复写入问题
2022/04/23 MySQL