简介: 使用gulp-rev-append给页面的引用添加版本号,清除页面引用缓存. 1.安装nodejs/全局安装gulp/项目安装gulp/创建package.json和gulpfile.js文件 1.1.gulp基本使用还未掌握?请参看: gulp详细入门教程 1.2.本示例目录结构如下: 2.本地安装gulp-rev-append 2.1.github:https://github.com/bustardcelly/gulp-rev-append 2.2.安装:命令提示符执行 cnpm…
1.gulp.src(globs[, options]) 1.1.说明:src方法是指定需要处理的源文件的路径,gulp借鉴了Unix操作系统的管道(pipe)思想,前一级的输出,直接变成后一级的输入,gulp.src返回当前文件流至可用插件: 1.2.globs:  需要处理的源文件匹配符路径.类型(必填):String or StringArray: 通配符路径匹配示例: “src/a.js”:指定具体文件: “*”:匹配所有文件    例:src/*.js(包含src下的所有js文件):…
/* gulp配置 */ /* gulp配置 */ var gulp = require('gulp'), concat = require('gulp-concat'), rename = require('gulp-rename'), uglify = require('gulp-uglify'), rev = require('gulp-rev-append'), //自动添加版本号 browserSync = require('browser-sync').create(); //热更新…
Gulp和所有Gulp插件都是基于nodeJs来运行的,因此在你的电脑上需要安装nodeJs,安装过程请移驾安装并配置前端自动化工具--grunt.安装完成后,通过运行cmd进入DOS命令窗口,如图: 如上图,输入node -v然后回车,看到有版本号,证明nodeJs安装成功. 接下来就是安装Gulp了: 1.首先进行全局安装gulp,如图: 安装完成后,输入gulp -v然后回车,看到有版本号,证明gulp安装成功. 2.在你的项目中安装作为项目的开发依赖(devDependencies),如…
由于js和css的缓存问题,所以,希望在html上给js和css添加上版本号. 常见的用法是使用gulp-rev和gulp-rev-collector进行操作.使用这两个插件,得到的效果如下图所示: 但是,我们希望的格式是这种: 有大神给出了解决办法,参见如下链接: Gulp自动添加版本号 此篇文章中的修改行数,会随着插件的更新而发生变化,大家可以搜索一下,基本上就是了. 可是随后又出现一个问题,如果重复执行添加版本号的操作,版本号会重复追加到链接后面: <link rel="styles…
SCSS语法: 假设变量申明带有!default,那么如果在此申明之前没有这个变量的申明,则用这个值,反之如果之前有申明,则用申明的值. ‘...’传递多个参数: @mixin box-shadow($shadow...){ -webkit-box-shadow:$shadow; -moz-box-shadow:$shadow; box-shadow:$shadow; } 用在属性或者选择器上,就得以#{}包裹 多个变量值一起申明: $linkColor: red blue !default;…
主线: 安装nodejs -> 全局安装gulp -> 项目安装gulp以及gulp插件 -> 配置gulpfile.js -> 运行任务 1,安装node.js 1.1.说明:gulp是基于nodejs,理所当然需要安装nodejs: 1.2.安装:打开nodejs官网,点击硕大的绿色Download按钮,它会根据系统信息选择对应版本(.msi文件).然后像安装QQ一样安装它就可以了(安装路径随意) 2,gulp 2.1 node -v 查看安装的nodejs版本,出现版本号,说…
由于现在前端自动化已经很有必要了,所以我今天死皮烂脸的找了2位前端大咖帮助我安装和配置gulp,讲真,这一步步弄下来直到安装配置成功,到现在还是迷迷糊糊,不过我还是把这些步骤给记录下来,以防下次不记得,或许还可以帮助需要的小伙伴呢.哈哈哈 gulp是基于Nodejs的自动任务运行器, 它能自动化地完成 javascript.coffee.sass.less.html/image.css 等文件的测试.检查.合并.压缩.格式化.浏览器自动刷新.部署文件生成,并监听文件在改动后重复指定的这些步骤.在…
/** * Created by leyi on 2016/8/25 0025. */ /*********************package.json依赖模块************************/ /* dependencies": { "gulp": "*", "gulp-autoprefixer": "*", "postcss-value-parser": "*&q…
项目发布时,需要对项目js文件进行压缩,混淆,连接等操作以减小项目http请求,加快访问. gulpjs.com中有很多插件可以用来配置打包部署. 需要用的常用插件有: gulp-jsmin  压缩js gulp-minify-css  压缩css gulp-imagemin  压缩图片 gulp-rename  重命名 gulp-clean  清空文件夹 gulp-copy  拷贝引用库,字体等文件 gulp-replace  替换html内容(将原来.js引用改为.min.js引用) 前置过…
有的人说,grunt已经廉颇老矣,尚能饭否.gulp已经成为了未来的趋势,或许将撼动grunt的地位. 那么就得看看gulp到底优势在哪里,在我最近的使用中发现,我的到了一个结论:“grunt廉颇老矣...”. gulp是基于流的自动化构建工具,有以下几项优点: 易于使用: 通过代码优于配置的策略,Gulp 让简单的任务简单,复杂的任务可管理. 构建快速: 利用 Node.js 流的威力,你可以快速构建项目并减少频繁的 IO 操作. 插件高质: Gulp 严格的插件指南确保插件如你期望的那样简洁…
OpenVAS漏洞扫描基础教程之OpenVAS概述及安装及配置OpenVAS服务   1.  OpenVAS基础知识 OpenVAS(Open Vulnerability Assessment System)是开放式漏洞评估系统,其核心部分是一个服务器.该服务器包括一套网络漏洞测试程序,可以检测远程系统和应用程序中的安全问题.OpenVAS不同于传统的漏洞扫描软件.所有的OpenVAS软件都是免费的,而且还采用了Nessus(一款强大的网络扫描工具)较早版本的一些开放插件.虽然Nessus很强大…
参考文献:http://blog.csdn.net/yuanyuan214365/article/details/53749583 1.安装nodejs:nodejs nodejs安装路径随意 node-v 2.全局安装淘宝cnpm:npm install cnpm -g --registry=https://registry.npm.taobao.org 3.全局安装gulp: cnpm install gulp -g 4.项目文件根目录新建package.json:新建package.jso…
参考自:http://www.sheyilin.com/2016/02/gulp_introduce/ 在原先基础上增加了less编译 es6转码资源地图等,修改了一部分的热刷新. gulpfile.js文件 /*! * gulp * $ npm install gulp gulp-ruby-sass gulp-cached gulp-uglify gulp-rename gulp-concat gulp-notify gulp-filter gulp-jshint gulp-rev-appen…
ArduinoYun教程之OpenWrt-Yun与CLI配置Arduino Yun OpenWrt-Yun OpenWrt-Yun是基于OpenWrt的一个Linux发行版.有所耳闻的读者应该听说他是一个使用在路由器上的操作系统.其实准确地说OpenWrt是一个嵌入式Linux发型版,它可以安装在各种嵌入式芯片中,如Arduino Yun.在本节中,将为大家介绍OpenWrt-Yun系统相关的知识. 使用SSH连接Arduino Yun SSH是Secure Shell的缩写,它是建立在应用层和…
版权声明:本文由金朝麟原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/627049001486519548 来源:腾云阁 https://www.qcloud.com/community 原来用的React+Webpack时,那种同步压缩修改.实时动态刷新页面的感觉真的太棒了.但如果使用Express+ejs+less的话,配置webpack非常繁琐,所以,一番折腾后,于是有了Express+Less+Gulp的配置方案…
前端现在三足鼎立的构建工具(不算比较老的ant,yeoman),非fis,grunt,gulp莫属了. fis用起来最简单,我打算自己得项目中使用一下fis. 先说一下gulp安装吧. 第一步:安装node和npm,搭建node环境. 访问 http://nodejs.org.npm会随着安装包一起安装. 确保node 和npm安装,如果如下两个命令行没有正确安装得话,说明node没有安装正确. $ node -v v0.12.6 $ npm -v 2.11.2 第二步:安装gulp 认识npm…
项目完成后的目录 我们所需要的插件为:gulp-minify-css gulp-concat gulp-uglify gulp-rename del 如下图所示,完成后的项目目录结构: 附加,获取package.json  (package.json 位于模块的目录下,用于定义包的属性.) 方法一.可以直接拷贝放进项目文件夹 方法二.npm init (自动初始化创建) 自动生成包含 { "name": "nodejs", "version":…
初始化目录结构如下(图片看不清可以拖到桌面或者直接CTRL+鼠标滚轮进行观看) 开发环境示例: 上线环境示例: gulpfile.js(详解版) (2018-3-28)添加了scss处理(去除了less处理) (2018-3-29)添加了实时性处理(在src目录,sass目录下*.css和*.scss放在一起,防止跨域无法请求到) (2018-3-29)已知错误:生成文件夹dist后index.html无法重命名css和js (2018-4-12) 修复完毕(最简版)- 点击Github拉取 -…
2. gulp + browserify /** * File Name: gulpfile.js */ // 引入 gulp var gulp = require('gulp'); // 引入组件 // 保证在当前项目目录下曾经运行过: // npm install gulp-uglify gulp-rename gulp-babel babel-preset-es2015 ...... --save-dev // var jshint = require('gulp-jshint'); va…
需要 var es = require('event-stream'); gulp.task('browserify', function(){ var files = [ { fpath: './js/main.js', fname: 'main.js' }, { fpath: './js/main2.js', fname: 'main2.js' } ]; var tasks = files.map(function(entry){ return browserify({ entries: […
gulp.task('tojs', () => { return gulp.src('./es/**/*.js') .pipe(babel({ babelrc: false, plugins: ['transform-es2015-modules-commonjs'] })) .pipe(gulp.dest('.rjs')) .on('end',()=>{ gulp.run('toes6') }); }); 思路是先实现所有有写import export语法的js文件都编译成require语法…
.DNS域欺骗攻击原理 DNS欺骗即域名信息欺骗是最常见的DNS安全问题.当一 个DNS服务器掉入陷阱,使用了来自一个恶意DNS服务器的错误信息,那么该DNS服务器就被欺骗了.DNS欺骗会使那些易受攻击的DNS服务器产生许多 安全问题,例如:将用户引导到错误的互联网站点,或者发送一个电子邮件到一个未经授权的邮件服务器. 二.DNS域欺骗攻击实现步骤 1.配置实验环境: 2.假设攻击者已经侵入受害者机器实施攻击: 3.使用嗅探进行DNS ID欺骗: 4.DNS通配符攻击. 我们需要像图1那样设置实…
系列目录 前端构建大法 Gulp 系列 (一):为什么需要前端构建 前端构建大法 Gulp 系列 (二):为什么选择gulp 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gulp专家 前端构建大法 Gulp 系列 (四):gulp实战 在上一篇 前端构建大法 Gulp 系列 (一):为什么需要前端构建 中,我们说了为什么需要前端构建,简单一句话,就是让我们的工作更有效率. 相信熟悉前端的人对Grunt一定不陌生,实际上我自己之前的很多项目也是在用Grunt, Grunt的…
最近一段时间都在做人事系统的项目,主要用到了EasyUI,数据库操作,然后抽点时间整理一下EasyUI的内容. 这里我们就以一个简洁的电话簿软件为基础,具体地说一下datagrid应用吧 datagrid就是一个表格,那我们怎么让数据库中的数据显示在其中呢? 第一步:各种配置这肯定不用说,你要想正常的应用一款软件就需要加载配置,这里我们不做详细说明 : 第二步:配置加载完毕,我们就需要写方法调用数据库来获取数据了, 1.最底层的方法也就是Dao了 ,我们需要获取所有的联系人信息, 2.这里我们定…
kali linux 系列教程之metasploit 连接postgresql可能遇见的问题 文/玄魂   目录 kali linux 下metasploit 连接postgresql可能遇见的问题................................ 1 前言............................................................................................................... 1…
kali Linux系列教程之BeFF安装与集成Metasploit 文/玄魂 kali Linux系列教程之BeFF安装与集成Metasploit 1.1 apt-get安装方式 1.2 启动 1.3 基本测试 1.4 异常信息 1.5 从源码安装BeEF 1.5.1 安装curl git 1.5.2 安装rvm 1.5.3 安装依赖项 1.5.4 安装ruby 1.5.5 安装bundler 1.5.6下载beef 1.5.7 安装和启动 1.6 集成metasploit 1.1 apt-g…
Kali Linux系列教程之OpenVas安装 文 /玄魂 目录 Kali Linux系列教程之OpenVas安装 前言 1.  服务器层组件 2.客户层组件 安装过程 Initial setup 初始管理员密码 从浏览器访问后台 更新数据 管理用户 扫描器配置信息查看 修复安装错误 创建证书 更新NVT 客户端证书错误 前言 OpenVAS是一款开放式的漏洞评估工具,主要用来检测目标网络或主机的安全性.与安全焦点的X-Scan工具类似,OpenVAS系统也采用了Nessus较早版本的一些开放…
Xamarin Anroid开发教程之Anroid开发工具及应用介绍 Xamarin开发Anroid应用介绍 如今智能手机已经盛行了好几年,而针对这些智能手机的软件开发也变得异常火热.但是在Android平台下只能使用Java开发,iOS平台下也只能使用Objective-C或Swift开发.对于那些C#程序员却只能眼看着这些火热的平台流口水.在几年前只能重新学习一门新的语言,才可以进入这些智能手机开发行业.现在,我们有了Xamarin.C#程序员不需要了解其它语言,就可以开始编写Android…
本文转载自:http://blog.csdn.net/jcodeer/article/details/1811339 '''Tkinter教程之Frame篇'''#Frame就是屏幕上的一块矩形区域,多是用来作为容器(container)来布局窗体.'''1.创建Frame'''# -*- coding: cp936 -*-from Tkinter import *root = Tk()#以不同的颜色区别各个framefor fm in ['red','blue','yellow','green…