您好,登录后才能下订单哦!
gulp-useref 和 gulp-if 的简介:
gulp-useref 插件会将多个路径不同的文件拼接成一个文件,并输出到相应目录(https://www.npmjs.com/package/gulp-useref)。
gulp-if 插件会根据条件判断是否成立执行相应的操作(https://github.com/robrich/gulp-if)。
一、gulp-useref 和 gulp-if 插件的使用
1、安装 “gulp-useref 和 gulp-if ”插件命令(在终端进入到项目根目录执行)
npm install --save-dev gulp-load-plugins gulp-useref gulp-if gulp-uglify gulp-clean-css
2、在项目根目录下提供 "gulp-useref" 插件任务配置需要的 src 目录和源文件(源文件放置到 src 目录下)
mkdir src
3、在 gulpfile.js 文件中配置使用 "gulp-useref 和 gulp-if "
具体示例:
var gulp = require('gulp'),
plugins = require('gulp-load-plugins')(); // 装载插件
gulp.task('useref', function () { // 自定义 "useref" 任务
return gulp.src('src/*.html') // 模糊匹配 src 目录下所有 html 文件
.pipe(plugins.useref()) // 调用 gulp-useref 插件
.pipe(plugins.if('*.js', plugins.uglify())) // 调用 gulp-uglify 插件
.pipe(plugins.if('*.css', plugins.cleanCss())) // 调用 gulp-clean-css 插件
.pipe(gulp.dest('dist')); // 目标文件存放路径
});
4、修改 src 目录下的 html 源文件
格式:
<!-- build:<type>(alternate search path) <path> <parameters> -->
... HTML Markup, list of script / link tags.
<!-- endbuild -->
注解:
type:类型,值可以是 css,js,remove。remove 指定将完全删除构建块而不生成文件。
alternate search path:备用搜索路径,可选,替代搜索路径允许更改。
path:目标文件输出路径。
parameters:指定添加到标签的额外参数。
具体示例:
<html>
<head>
<!-- build:css css/combined.css -->
<link href="css/one.css" rel="stylesheet">
<link href="css/two.css" rel="stylesheet">
<!-- endbuild -->
</head>
<body>
<!-- build:js js/combined.js -->
<script type="text/javascript" src="js/one.js"></script>
<script type="text/javascript" src="js/two.js"></script>
<!-- endbuild -->
</body>
</html>
5、最后在终端运行 "gulp useref" 命令
PS:如果没有错误提示信息,证明就没什么问题了。现在去项目根目录下看是否生成 "dist" 目录和目标文件。未完待续。。。。
6、生成的 html 文件内容如下
<html>
<head>
<link rel="stylesheet" href="css/combined.css"/>
</head>
<body>
<script src="js/combined.js"></script>
</body>
</html>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。