vue+Iview+gulp 生成文档说明
1.安装npm gulp相关插件 比如:gulp、gulp-concat、gulp-htmlmin、gulp-cssmin、gulp-cheerio、gulp-clean

2. 编写gulpfile.js
//获取 gulp
var gulp = require('gulp');
//压缩 JS
var uglify = require('gulp-uglify');
//合并文件
var concat = require('gulp-concat');
//压缩html
var htmlmin = require('gulp-htmlmin');
//压缩css
var cssmin = require('gulp-cssmin');
//合并文件到html
var cheerio = require('gulp-cheerio'); var domSrc = require('gulp-dom-src');
//清空文件夹
var clean = require('gulp-clean');
//混淆js
var javascriptObfuscator =require('gulp-javascript-obfuscator') gulp.task('clean',function(){
return gulp.src('./dist',{read:false})
.pipe(clean());
});
//压缩 js 文件
gulp.task('jscompress', function() {
return gulp.src(['src/js/*.js','!src/js/**/{iview.min,vue.min,zh-cn.min}.js'])
.pipe(javascriptObfuscator(
//{compact:true,
//sourceMap: true}
))
// .pipe(uglify({
// mangle: {reserved:['require' ,'exports' ,'module' ,'$']},//类型:Boolean 默认:true 是否修改变量名
// compress: true //类型:Boolean 默认:true 是否完全压缩
// }))
.pipe(concat('index.min.js'))//输入到index.min.js中
.pipe(gulp.dest('dist/js'));
}); //压缩 css 文件
gulp.task('csscompress', function() {
return gulp.src(['src/css/*.css','!src/css/*/{iview.min}.css'])
.pipe(cssmin({
advanced: false,//类型:Boolean 默认:true [是否开启高级优化(合并选择器等)]
//compatibility: 'ie7',//保留ie7及以下兼容写法 类型:String 默认:''or'*' [启用兼容模式; 'ie7':IE7兼容模式,'ie8':IE8兼容模式,'*':IE9+兼容模式]
keepBreaks: false,//类型:Boolean 默认:false [是否保留换行]
keepSpecialComments: '*'
//保留所有特殊前缀 当你用autoprefixer生成的浏览器前缀,如果不加这个参数,有可能将会删除你的部分前缀
}))
.pipe(concat('index.min.css'))//输入到index.min.css
.pipe(gulp.dest('dist/css'));
});
//压缩html
gulp.task('thtml',function(done){
var options = {
collapseWhitespace:true,
collapseBooleanAttributes:true,
removeComments:true,
removeEmptyAttributes:true,
removeScriptTypeAttributes:true,
removeStyleLinkTypeAttributes:true,
minifyJS:true,
minifyCSS:true
};
gulp.src('src/index.html')
.pipe(htmlmin(options))
.pipe(gulp.dest('dist/'));
done();
}); //替换html页面引用
gulp.task('replaceindex', function() {
return gulp.src('dist/index.html')
.pipe(cheerio(function ($) {
$('script').remove();
$('link').remove();
$('body').append('<script src="/js/vue.min.js"></script>');
$('head').append('<link rel="stylesheet" href="/css/iview.min.css">');
$('body').append('<script src="/js/iview.min.js"></script>');
$('head').append('<link rel="stylesheet" href="/css/index.min.css">');
$('body').append('<script src="/js/index.min.js"></script>'); }))
.pipe(gulp.dest('dist/'));
});
//copy 不需要的压缩文件
gulp.task('copy',function(done){
gulp.src('src/js/*.min.js')
.pipe(gulp.dest('dist/js'));
gulp.src('src/css/*.min.css')
.pipe(gulp.dest('dist/css'));
done();
}); gulp.task('build',gulp.series(gulp.parallel('jscompress','csscompress','thtml','copy'),'replaceindex',function(done){
done();
}));
3.执行gulp build 命令

4.预览页面 (通过IIS访问) http://192.168.1.106:8017/index.html

5.相关代码


vue+Iview+gulp 生成文档说明的更多相关文章
- 使用 Swagger 自动生成 ASP.NET Core Web API 的文档、在线帮助测试文档(ASP.NET Core Web API 自动生成文档)
对于开发人员来说,构建一个消费应用程序时去了解各种各样的 API 是一个巨大的挑战.在你的 Web API 项目中使用 Swagger 的 .NET Core 封装 Swashbuckle 可以帮助你 ...
- 使用Ldoc给Lua生成文档
Ldoc介绍 LDoc是一个Lua的文档生成工具,过去,比较常用的Lua生成文档的工具是LuaDoc,可惜作者自从2008年之后就再也没有发布过新的版本了,说明作者基本上已经放弃维护了.而LDoc则是 ...
- 使用PhpDocumentor生成文档
一,网站根目录执行 $ composer require --dev phpdocumentor/phpdocumentor 二,进入vendor/bin/目录执行 $phpdoc -d D:\ser ...
- doxygen的使用(一)配置并生成文档
原创文章,欢迎阅读,禁止转载. doxygen是个好用的文档生成工具,他的强大功能有很多介绍,我就不说了.自带的chm帮助手册很全面,包括功能.注释规范.怎么配置.工具用法等.doxygen的用法共3 ...
- 配置WCF同时支持WSDL和REST,swaggerwcf生成文档
配置WCF同时支持WSDL和REST,SwaggerWCF生成文档 VS创建一个WCF工程,通过NuGet添加SwaggerWcf 创建完成后通过 程序包管理控制台 pm>Install-Pac ...
- ASP.NET Core 1.0 中使用 Swagger 生成文档
github:https://github.com/domaindrivendev/Ahoy 之前文章有介绍在ASP.NET WebAPI 中使用Swagger生成文档,ASP.NET Core 1. ...
- 为Unity项目生成文档(二)
Unity项目生成文档 接着上篇文章:为Unity项目生成文档(一) .Net项目可在VS配置XML 我们可以在VS中通过配置来生成xml文件,但是unity的project,就算同样配置了xml文档 ...
- doc2vec 利用gensim 生成文档向量
利用gensim 直接生成文档向量 def gen_d2v_corpus(self, lines): with open("./data/ques2_result.txt", &q ...
- 使用eclipse生成文档(javadoc)
使用eclipse生成文档(javadoc)主要有三种方法:1,在项目列表中按右键,选择Export(导出),然后在Export(导出)对话框中选择java下的javadoc,提交到下一步.在Java ...
随机推荐
- spring的组成模块
spring的核心组件(骨骼架构)—— 共同创建了Bean关系网络 Core:主要定义了资源的访问方式 Context:给spring提供一个运行时的环境 Bean:Bean的定义,创建以及解析 ...
- windows 和 linux 多线程
学习了几天多线程技术,做个总结,便于记忆. 一般 多线程传递参数 为 void* 所以会有一个强制转换过程 (int*) (void *)等,传递多个参数选择 结构体指针.为了避免多个线程访问数据 ...
- java创建一个空白zip
String zipath = localpath+zipname+".zip"; public static void createNewzip(String zipath) t ...
- [翻译]windows下 连接到 bitnami的phpmyadmin
bitnami 因为安全考虑,只能 localhost 访问 phpmyadmin 为了能通过SSH 隧道访问 phpMyAdmin,你需要一个ssh 客户端.参考文章介绍使用中选择使用 PuTTY, ...
- 【Codeforces 1185C2】Exam in BerSU (hard version)
[链接] 我是链接,点我呀:) [题意] 要让前i个数字的和小于等于M. 问你最少要删掉前i-1个数字中的多少个数字,每个询问都是独立的. [题解] ti的范围很小. 所以N*MAX(TI)暴力枚举就 ...
- NX二次开发-UFUN工程图更新视图UF_DRAW_update_one_view
NX9+VS2012 #include <uf.h> #include <uf_draw.h> #include <uf_obj.h> #include <u ...
- 带你走进webpack世界,成为webpack头号玩家。
最近朋友圈被<头号玩家>刷爆了,斯皮尔伯格一个资深电影导演,把对过去经典的致敬,对未来的憧憬浓缩在这一部电影中,可以说让观众燃了起来. 观望整个前端开发,不断的演化,发展迅速.前端开发从最 ...
- [JZOJ 5861] 失意
思路: 求交集最大老套路,排序之后用堆维护即可. #include <bits/stdc++.h> using namespace std; const int mod = 1e9+7; ...
- ios 查看UIView的层次继承关系工具
http://stackoverflow.com/questions/5150186/how-do-i-inspect-the-view-hierarchy-in-ios https://github ...
- Wannafly挑战赛21-A-灯塔-内含正确的凸包模版
(有任何问题欢迎留言或私聊 && 欢迎交流讨论哦 目录 目录 题意:传送门 思路: AC代码: 题意:传送门 题目描述 Z市是一座港口城市,来来往往的船只依靠灯塔指引方向. 在海平面上 ...