用yo搭建的angular项目,用gulp自动化构建。

自动化构建主要的功能大致有:

1. 文件压缩

2. 文件重命名

3. 文件合并

4. css,js文件自动引入到html

5. 自动刷新

.......

在用gulp过程中出现的问题,一下是我的项目结构

1. 在搭建项目的时候,我想使用sass, 可是由于gulp-sass的lfs 服务,我们无法访问,所以安装失败。网上有很多解决的办法。但是我都没有成功,然后我就想先放弃,先打一个可以用的项目再说。

2. 后面的都一帆风顺。 项目可以使用。然后我开始尝试使用gulp的一些功能。首先文件压缩和重命名是没有问题的。但是bower.json里面的包并没有自动引入index.html

3. 对比grunt.js, 在gulp.task('start:server',...)加入代码middleware(虽然我现在说的很easy,但其实和同事研究了很久)

gulp.task('start:server', function() {
$.connect.server({
root: [yeoman.app, '.tmp'],
livereload: true,
middleware: function (connect) {
return [
connect.static('.tmp'),
connect().use(
'/bower_components',
connect.static('./bower_components')
),
connect().use(
'/app/styles',
connect.static('./app/styles')
),
connect.static(yeoman.app)
];
},
// Change this to '0.0.0.0' to access the server from outside.
port: 9000
});
});

4. 然后是更改html,js,css,页面自动刷新,这个更坑。

yo初始化的gulp.js是这样写的,

gulp.task('watch', function () {
$.watch(paths.styles)
.pipe($.plumber())
.pipe(styles())
.pipe($.connect.reload()); $.watch(paths.views.files)
.pipe($.plumber())
.pipe($.connect.reload()); $.watch(paths.scripts)
.pipe($.plumber())
.pipe(lintScripts())
.pipe($.connect.reload()); $.watch(paths.test)
.pipe($.plumber())
.pipe(lintScripts()); gulp.watch('bower.json', ['bower']);
});

但并没有作用,查看grunt和Internet,好像要使用livereload,于是在‘watch’的task里试用一下方法,起作用了。

gulp.watch(yeoman.app+'/{,**/}*.html',function(){
livereload.changed(yeoman.app+'/{,**/}*.html');
});

此时我已身心必备,突然同事发现了一个好东西,那就是BrowerSync。

研究完,在总结呢...

最新文章

  1. C#上位机制作之串口接受数据(利用接受事件)
  2. 你可能不知道的 NaN 以及 underscore 1.8.3 _.isNaN 的一个 BUG
  3. Spark 读取HBase和SolrCloud数据
  4. 可在广域网部署运行的QQ高仿版 -- GG叽叽(源码)
  5. li标签包含img的问题
  6. Sqli-LABS通关笔录-2
  7. WP开发资源
  8. c++之路进阶——bzoj3343(教主的魔法)
  9. 企业需要k2来解放孤岛危机
  10. C#编写媒体播放器--Microsoft的Directx提供的DirectShow组件,该组件的程序集QuartzTypeLib.dll.
  11. LRU与MRU算法
  12. 定时PING下IP地址,检测该服务器是否还活着。 smokeping
  13. 使用HttpClient工具类测试WebService接口(soap)
  14. 永久设置mysql中文乱码问题
  15. 运行shell脚本时报错"[[ : not found"解决方法
  16. Apache Flink 流处理实例
  17. APP内置react 应用与APP的交互问题
  18. winform 仿web 滑块验证
  19. Freescale 车身控制模块(BCM) 解决方案
  20. VS2017编译LevelDB

热门文章

  1. Openstack Basic
  2. jquery文件上传
  3. C语言隐形密码输入
  4. [JS]递归对象或数组
  5. windows下的php rabbit mq安装、配置
  6. redis 主从同步
  7. Res_Orders_02
  8. percona-toolkit工具包的安装和使用
  9. IE6-8下自定义标签的表现
  10. c#中实现多个接口出现同名同参的方法