Laravel之Elixir
一.Elixir安装和设置
1.安装node.js
2.安装Gulp 作为全局NPM 包
npm install --global gulp
3.最后,在新安装的Laravel 根目录下,你会发现有一个package.json 文件。该文件和composer.json 一样,只不过是用来定义Node 依赖而非PHP ,你可以通过运行如下命令来安装需要的依赖:
npm install
windows下:
npm install --no-bin-links
4.按需配置根目录下的gulpfile.js
二.常用命令
1.生成文件
gulp 2.最小化CSS 和JavaScript 文件
gulp --production 3.自动监控资源改变
gulp watch
gulp watch --production
三.常用配置
1.如果你只想要将多个原生CSS 样式文件合并到一个文件,可以使用styles 方法。传递给该方法的路径相对于resources/assets/css 目录,结果CSS 被存放在public/css/all.css:
elixir(function(mix) {
mix.styles([
'normalize.css',
'main.css'
]);
});
2.还可以通过传递第二个参数到styles 方法来输出结果文件到一个自定义路径
elixir(function(mix) {
mix.styles([
'normalize.css',
'main.css'
], 'public/assets/css');});
3.如果你有多个JavaScript 文件想要编译成单个文件,可以使用 scripts 方法。 scripts 方法假定所有路径相对于resources/assets/js 目录,而且所有结果JavaScript 默认存放在public/js/all.js :
elixir(function(mix) {
mix.scripts([
'jquery.js',
'app.js'
]);
});
4.如果你需要将多个脚本集合合并到不同的文件,需要多次调用scripts 方法。该方法的第二个参数决定每个合并的结果文件名:
elixir(function(mix) {
mix.scripts(['app.js', 'controllers.js'], 'public/js/app.js')
.scripts(['forum.js', 'threads.js'], 'public/js/forum.js');
});
5.如果你需要将多个脚本合并到给定目录,可以使用scriptsIn 方法。结果JavaScript 会被存放到public/js/all.js :
elixir(function(mix) {
mix.scriptsIn('public/js/some/directory');
});
6.版本号/缓存刷新
Elixir 可以使用version 方法为你处理这种情况。version 方法接收相对于public 目录的文件名,附加唯一hash 到文件名,从而实现缓存刷新。例如,生成的文件名看上去是这样——all-16d570a7.css:
elixir(function(mix) {
mix.version('css/all.css');
});
模板中使用
<link rel="stylesheet" href="{{ elixir('css/all.css') }}">
*使用版本号生成的文件在/public/build目录下
一个示例:
elixir(function(mix) {
mix.styles(['a.css','b.css'], 'public/assets/css/style.css');
});
elixir(function(mix) {
mix.scripts(['a.js','b.js'],'public/assets/js/main.js');
});
elixir(function(mix) {
mix.version(['assets/css/style.css', 'assets/js/main.js']);
});
以上也可以使用方法链
Laravel之Elixir的更多相关文章
- laravel的elixir和gulp用来对前端施工
使用laravel elixer npm install --global gulp ok 然后在安装好的laravel 下 npm install 以安装 laravel-elixir subli ...
- laravel5.4+vue+element简单搭建(gulp+laravel Elixir)(转)
如今laravel来到5.4版本,更方便引入vue了,具体步骤如下: 下图为我动到的文件 1.下载laravel5.4 2.命令行(laravel5.4目录下):composer install 3. ...
- laravel elixir
npm install npm install jquery --save //bootsrap3.36 与 jquery3不兼容,下载jquery时可能需要确定版本号 npm install jqu ...
- Laravel 5 性能优化技巧
说明 性能一直是 Laravel 框架为人诟病的一个点,所以调优 Laravel 程序算是一个必学的技能. 接下来分享一些开发的最佳实践,还有调优技巧,大家有别的建议也欢迎留言讨论. 这里是简单的列表 ...
- 50分钟学会Laravel 50个小技巧
50分钟学会Laravel 50个小技巧 时间 2015-12-09 17:13:45 Yuansir-web菜鸟 原文 http://www.yuansir-web.com/2015/12/09 ...
- laravel 中 与前端的一些事5 之解决缓存问题:version
Version的主要目的就是解决浏览器的缓存问题,在这个方面,Elixir给出的解决方案很完美 应用场景:当我们的css或者js重新更新了,我们需要告诉浏览器我们不要缓存的css或js静态文件样式时, ...
- laravel 中 与前端的一些事2 之使用Gulp编译sass
下载所有依赖npm的packagist: 下载了前端laravel elixir编译所需要的全部工具: gulp编译scss文件: scss文件的默认存放位置: 输入命令gulp 开始编译scss文 ...
- 为什么Laravel是最成功的PHP框架?
Laravel 是一个有着美好前景的年轻框架,它的社区充满着活力,相关的文档和教程完整而清晰,并为快速.安全地开发现代应用程序提供了必要的功能.在近几年对PHP 框架流行度的统计中,Laravel始终 ...
- 10个技巧优化PHP程序Laravel 5框架
10个技巧优化PHP程序Laravel 5框架 性能一直是 Laravel 框架为人诟病的一个点,所以调优 Laravel 程序算是一个必学的技能. 接下来分享一些开发的最佳实践www.itxdl.c ...
随机推荐
- 自定义View Measure过程(2)
目录 目录 1. 作用 测量View的宽/高 在某些情况下,需要多次测量(measure)才能确定View最终的宽/高: 在这种情况下measure过程后得到的宽/高可能是不准确的: 建议在layou ...
- Hibernate中多种方式解除延迟加载
问题引发:因为dao使用load(),默认延迟加载的,当在biz关闭session之后,UI层无法获取对象的非id属性值 解决方案: 1.变成get,即时加载 2.用Hibernate.isIniti ...
- [ CodeVS冲杯之路 ] P1039
不充钱,你怎么AC? 题目:http://codevs.cn/problem/1039/ 一道赤裸裸的嘲讽型数学题,推出来的话算法代码就3行,没有推出来连暴力都无从入手…… 设 f(n,m) 为整数 ...
- windows实时监测热插拔设备的变化(转)
原文转自 https://blog.csdn.net/windows_nt/article/details/13614849 序: 在21世纪,这个信息时代,热插拔设备是一个巨大的安全隐患.在这个篇文 ...
- Generator函数的语法
简介 Generator函数是ES6关于异步编程的解决方案.Generator函数能够让函数暂停执行(即交出函数的执行权),简单直白点来理解,Generator函数就是一个状态机,内部封装了多个状态( ...
- PSR-1 基础编码规范
本篇规范制定了代码基本元素的相关标准, 以确保共享的PHP代码间具有较高程度的技术互通性. 关键词 “必须”("MUST").“一定不可/一定不能”("MUST NOT& ...
- Visual Studio 2013下我常用的两个插件
随手记一下,我比较常用的两个插件,抛砖引玉. 代码高亮显示:SelectionHighlight.vsix 虚线插件:Indent Guides.vsix
- 一篇需要膜拜的文篇--Javascript异步编程模型进化(转)
要我能用得这么熟, 那前端出师了哈. http://foio.github.io/javascript-asyn-pattern/ 改天一个一个亲测一下. Javascript语言是单线程的,没有复杂 ...
- virtualbox centos6.6 minimal 与宿主机win7共享文件夹
1.virtualbox, 设置-共享文件夹,设置好共享文件夹win7dir 2.centos 创建文件夹比如share 3.mount -t vboxsf win7dir /root/share 4 ...
- HDU 1846 Brave Game【巴什博弈裸题】
Brave Game Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Su ...