laravel与front-end
准备工作
在此之前要安装node 、 npm 。这里安装node 、 npm 就不介绍了,百度一大把。
安装所有的npm依赖包
//进入项目的根目录
npm install
安装完后会出现一个node_modules目录
使用gulp编译sass
npm安装gulp(如果没有翻墙呢,那么很多包安装安装不了得)
//全局安装
npm intall --global gulp
// 项目中安装
npm install --save-dev gulp
不过建议用淘宝镜像安装gulp,可以使用我们定制的 cnpm (gzip 压缩支持) 命令行工具代替默认的 npm:
npm install -g cnpm --registry=https://registry.npm.taobao.org
用淘宝的cnpm安装gulp(用了这个感觉速度超快)
cnpm install gulp
在此可以做一个示例,在 resource/assets/sass/app.scss 文件中去掉第一行的注释符,如下图:
在控制台进行编译,显示已编译成功:
打开public/css/文件, 可知有一个app.css文件,说明编译成功:
如果想编译多个sass文件时,可以在gulpfile.js文件中修改至如下代码:
// 编译道不同的文件中
elixir(function(mix) {
mix.sass('app.scss','public/css/first.css')
.sass('two.scss','public/css/two.css');
}); // 编译到同一个文件中
elixir(function(mix) {
mix.sass(['app.scss','two.scss'],'public/css/first.css')
});
结果如下图:
使用gulp编译less文件
less的编译跟scss的编译非常相同,只需要给scss改为less即可,
elixir(function(mix) {
mix.less('app.less','public/styles');
// .sass('two.scss','public/css/two.css');
});
需要注意的一点就是,在编译的是候会默认的去resource/less文件路径,因此在编译之前需要改文件名,新建也可。
如果想自己配置文件less或scss文件的 路径可以添加如下代码,编译时,就会到配置的文件中去找资源:
gulp结果:
从上图提示的错误就可以知道配置的文件路劲起作用了。
合并压缩静态文件
//elixir.config.assetsPath = 'assets'; elixir(function(mix) {
// mix.less('app.less','public/styles');
// .sass('two.scss','public/css/two.css');
mix.styles(['a.css','b.css']);
mix.scripts('js.js');
});
gulp 结果:
可知并未起到压缩结果,只是把几个文件合并为一个文件
如果要起到压缩得结果来提高加载速度:
gulp --production
laravel 解决缓存问题
在开发中,当我们更新了某个文件时,而本地又有缓存,因此得不到最新的效果。那如和解决这一个问题呢?
第一种:
手动得在链接地址添加 version 参数。并设置值,这样浏览器就知道更新
第二种:
在gulpfile.js中添加 version()方法并传入文件的路径
elixir(function(mix) {
mix.styles(['a.css','b.css']).version('/css/all.css');
});
gulp下,在public文件夹下多了个build文件,同时也产生了一个hash文件
打开文件可知,在模板中,hash问价才是我们要引入的文件,只需在加载文件时,利用 elixir 方法即可
在浏览器中我们也可以检测到,成功加载
因此,在每次版本更新时,我们只需 gulp 下 就可以得到最新版本
yarn的使用及其简介
百度yarn pk npm ,总体来说,yarn 比npm 更优越,
并行安装
清晰的输出
安装的时候无法保证速度/一致性
安全问题,因为 npm 安装时允许运行代码
功能差异 , Yarn 与 npm 很类似,但通过引擎的对比就能察觉 Yarn 的不同
安装可以参考官网 yarn安装
同时记得 PHP>5.6.4
我要去升级服务器了 , 太low了。
laravel与front-end的更多相关文章
- Laravel与Repository Pattern(仓库模式)
为什么要学习Repository Pattern(仓库模式) Repository 模式主要思想是建立一个数据操作代理层,把controller里的数据操作剥离出来,这样做有几个好处: 把数据处理逻辑 ...
- laravel中如何写验证码文件,并防止中文乱码.
本例为生成中文验证码,专为laravel而生. //控制器: public function getVcode(Request $request){ $width=845; $height=125; ...
- laravel/laravel和laravel/framework有何区别?
在安装laravel的时候,我们一般是download github上的laravel/laravel,随后执行composer install,在这个过程中,你会发现composer其中的一项工作是 ...
- Laravel学习笔记(一)
根据国外的调查,Laravel是最流行的框架,最近公司需要PHP的开发人员,但是一直招不到人,只好亲自上阵研究一下.由于以前对PHP只是大致了解,这次学习开始的时候也挺挠头的,到今天稍微入了 ...
- laravel前后台路由分离
在laravel中创建文件放置前台和后台控制器 找到app/providers/RouteServiceProvider.PHP文件 在内配置 例: <?php namespace App\Pr ...
- laravel常见异常解决
requested URL not found http://stackoverflow.com/questions/21458080/the-requested-url-projectname-us ...
- 【nginx,apache】thinkphp ,laravel,yii2开发运行环境搭建
缘由 经常会有人问xx框架怎么配置运行环境,这里我就给贴出吉祥三宝(Yii2,Laravel5,Thinkphp5 )的Nginx和Apache的配置,供大家参考 Nginx Yii2 server ...
- php Laravel 框架之建立后台目录
今天研究了在Laravel框架中的控制器中加入后台的目录.发现了一些小的规律,拿来和大家分享一下吧. 通常情况下,我们是直接在controllers目录中加入我们的控制器,然后再routes.php ...
- Linux laravel安装
第一步:安装php套件 目前为止laravel是5.1版本,需要对php有要求,要php5.59以上 The Laravel framework has a few system requiremen ...
- Laravel 精选资源大全
原文链接 必备品 文档:Documentation API:API Reference 视频:Laracasts 新闻:Laravel News 中文文档 Laravel学院– Laravel 5. ...
随机推荐
- 启动tomcat7w.exe提示"指定的服务未安装"
说下本人的情况:因为重装系统,安装在C盘的tomcat的失去作用.想要启动tomcat7w.exe(这是管理服务的)出现“指定服务未安装,无法打开tomcat7服务”的提示.原因是重装系统也导致之前安 ...
- 剑指offer—第三章高质量代码(合并两个排序链表)
题目:输入员两个递增排序的链表,合并这两个链表并使新的链表中的结点仍然是按照递增排序的. 思路:首先,定义两个头节点分别为Head1和Head2的链表,然后比较第一个节点的值,如果是Head1-> ...
- PING分组网间探测 ICMP协议
1.Ping的基础知识 Ping是潜水艇人员的专用术语,表示回应的声纳脉冲,在网络中Ping 是一个十分好用的TCP/IP工具.它主要的功能是用来检测网络的连通情况和分析网络速度.是ICMP的一个 ...
- 6 字典和集合——《Swift3.0从入门到出家》
字典和集合 字典 字典是集合类型存放多个键值对,其中键是唯一的,不能重复 字典中存放的键值对是无序的,写入的顺序和读取的顺序可能不同 字典中存放的数据是任意类型 字典可以分为可变字典和不可变字典 创建 ...
- ②SpringBoot之Web综合开发
Spring boot初级教程 :<SpringBoot入门教学篇①>,方便大家快速入门.了解实践Spring boot特性,本文介绍springBoot的web开发 web开发sprin ...
- Hibernate 查询语句用法记录
Hibernate 查询MatchMode的四种模式 MatchMode.START:字符串在最前面的位置.相当于"like 'key%'" MatchMode.END:字符串在最 ...
- int 和 Integer 有什么区别
原文地址:https://blog.csdn.net/chenliguan/article/details/53888018 1 int与Integer的基本使用对比 (1)Integer是int的包 ...
- 完整的qt安装教程
大家可能认为qt收费了 其实不是 大家直接点击 这个 Community 这里的下载 Download 然后呢 就跳转到这个界面 点击 Qt Offline Installer 就会跳到这个地方 滑下 ...
- java从键盘输入若干数,求其最大值,最小值,平均值。等等
总结:有一定基础的人,应该发现第一个程序可以运行,其实它有个致命的错误.有谁能一眼看出来呢?第二个程序是对的. 这个题目求最大值,最小值,平均值我不会求,不知道这个if判断放在类的外面还是main函数 ...
- Effective java笔记2--创建于销毁对象
一.创建对象的两种方式 1.提供公有的构造器. 2.提供一个返回类实例的静态方法. 二.使用静态方法创建对象 优势: 1.静态工厂方法的一个好处是,与构造函数不同,静态工厂方法具有名字.产生的客户端代 ...