Grunt

nodeJS项目gitignore文件参考

让人想犯罪 __ 提交于 2020-08-15 01:28:15
# Logs logs *.log npm-debug.log* yarn-debug.log* yarn-error.log* # Runtime data pids *.pid *.seed *.pid.lock # Directory for instrumented libs generated by jscoverage/JSCover lib-cov # Coverage directory used by tools like istanbul coverage # nyc test coverage .nyc_output # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) .grunt # Bower dependency directory (https://bower.io/) bower_components # node-waf configuration .lock-wscript # Compiled binary addons (https://nodejs.org/api/addons.html) build/Release # Dependency directories node_modules/ jspm_packages/

解决CSS浏览器兼容性问题的一些方案浅析

蓝咒 提交于 2020-07-29 04:05:03
  前端是一个苦逼的职业,不仅因为技术更新快,而且要会的东西实在太多了,更让人头疼的是,还要面临各种适配、兼容性问题。   为什么会有浏览器兼容性问题。还不是因为浏览器厂商太多了。关键是不同厂商,甚至同一厂商不同版本,对同一段CSS的解析效果也不一致,这就导致了页面显示效果不统一,也就带来了兼容性问题。   市场上浏览器种类很多,不同浏览器的内核也不尽相同,所以各个浏览器对网页的解析存在一定的差异。   浏览器内核主要分为两种,一是渲染引擎,另一个是js 引擎,内核更加倾向于说渲染引擎。常见的浏览器内核可以分四种:Trident、Gecko、Blink、Webkit   我们暂且不去关注太多细节问题, 比如那个css样式需要我们去兼容,而是想讨论一下大的解决思路,主要包括4个方面,浏览器CSS样式初始化、浏览器私有属性,CSS hack语法和自动化插件。 1、 浏览器CSS样式初始化   由于每个浏览器的css默认样式不尽相同,所以最简单有效的方式就是对其进行初始化,相信很多朋友都写过这样的代码,在所有CSS开始前,先把marin和padding都设为0,以防不同浏览器的显示效果不一样。以及对一些常用的html元素进行一些初始化处理等等。 * { margin: 0 ; padding: 0 ; }   关于浏览器CSS样式初始化,经验不丰富的话,可能也不知道该初始化什么

windows环境下elasticsearch安装教程(超详细)

元气小坏坏 提交于 2020-07-28 02:48:52
一、安装jdk ElasticSearch是基于lucence开发的,也就是运行需要java jdk支持。所以要先安装JAVA环境。 由于ElasticSearch 5.x 往后依赖于JDK 1.8的,所以现在我们下载JDK 1.8或者更高版本。 下载JDK1.8,下载完成后安装。 二、安装ElasticSearch 1.ElasticSearch 下载地址: https://www.elastic.co/downloads/elasticsearch 2.下载安装包后解压 3.进入bin目录下,双击执行elasticsearch.bat 4.看到started说明启动成功,打开浏览器测试一下,如下图 http://localhost:9200 三、安装ElasticSearch-head插件 1、安装node环境( 更详细教程查看博主node安装教程篇 ) 网址: https://nodejs.org/en/download/ 下载Windows版msi的,下载完直接安装,一直确定 安装完后cmd查看版本node-v 2、安装grunt grunt是一个很方便的构建工具,可以进行打包压缩、测试、执行等等的工作,5.x里之后的head插件就是通过grunt启动的。因此需要安装grunt. npm install -g grunt-cli 查看版本号 grunt -version

没有前端开发实习经历,毕业后如何找到好工作?

烂漫一生 提交于 2020-05-09 15:18:42
对于大学毕业生而言,好不好找工作受影响的因素很多,不只是看你是否实习过!但相比较来说,同等资质的前端,有实习经验去找工作要有优势些!如果你是老板,让你花钱雇人,你愿意用有经验的?还是需要花时间培养的呢?显然大家都喜欢前人栽树后人乘凉啊! 前端的选择也越来越多 前端是互联网发展过程中精细化分工的产物,前后端分离技术的出现则把前端职位推向了高潮 现今软件开发领域的所有职位像前端工程师、后端工程师、需求分析师、测试工程师、产品设计师等,在以前几乎只用一个名词——“程序员”或者“工程师”,就可以完全代替,因为这些岗位的所有工作在以前都是由一个人来完成的,就是现在所谓的“全栈工程师”。 他们从可行性调研、需求分析、系统设计、软件开发、软件测试、上线部署、后期运维等环节,全面操作,可谓是样样拿得起放得下。 前端技术在不断更新升级 后来随着移动互联网的兴起,WEB2.0技术的更新,使得人们更加注重页面的呈现和页面的交互,这就促使了前端开发职位的独立。 伴随着出现的就是技术框架的更新和迭代,代码框架上开始出现了前后端分离技术,前端研发技术也开始工程化,一众前端技术jquery、extjs、easyui、bootstrap、angularjs、react、vue、H5等等技术和框架相继出现和诞生。当然还有支撑其发展的工程化工具,比如grunt&gulp、webpack等。 js框架也层出不穷

前端面试题整理—Webpack+Git篇

筅森魡賤 提交于 2020-05-08 08:25:11
1、什么是webpack,与grunt和gulp有啥不同   webpack是一个模块打包工具,在webpack里面一切皆模块   通过loader转换文件,通过plugin注入钩子,最后输出有多个模块组合成的文件   WebPack可以看做是模块打包机:它做的事情是,分析你的项目结构,找到Js模块以及其它的一些浏览器不能直接运行的拓展语言,并将其打包为合适的格式以供浏览器使用   Gulp/Grunt是一种能够优化前端的开发流程的工具,而WebPack是一种模块化的解决方案,不过Webpack的优点使得在很多场景下可以替代Gulp/Grunt类的工具   Grunt和Gulp的工作方式是:在一个配置文件中,指明对某些文件进行类似编译,组合,压缩等任务的具体步骤,工具之后可以自动替你完成这些任务   Webpack的工作方式是:把你的项目当做一个整体,通过一个给定的主文件(如:index.js),Webpack将从这个文件开始找到你的项目的所有依赖文件,使用  loaders处理它们,最后打包为一个(或多个)浏览器可识别的JavaScript文件   gulp和grunt需要开发者将整个前端构建过程拆分成多个Task,并合理控制所有Task的调用关系   webpack需要开发者找到入口,并需要清楚对于不同的资源应该使用什么Loader做何种解析和加工 2、webpack的优缺点

手把手教你搭建一个Elasticsearch集群

ぃ、小莉子 提交于 2020-05-07 20:20:10
一、为何要搭建 Elasticsearch 集群 凡事都要讲究个为什么。在搭建集群之前,我们首先先问一句,为什么我们需要搭建集群?它有什么优势呢? (1)高可用性 Elasticsearch 作为一个搜索引擎,我们对它的基本要求就是存储海量数据并且可以在非常短的时间内查询到我们想要的信息。所以第一步我们需要保证的就是 Elasticsearch 的高可用性,什么是高可用性呢?它通常是指,通过设计减少系统不能提供服务的时间。假设系统一直能够提供服务,我们说系统的可用性是 100%。如果系统在某个时刻宕掉了,比如某个网站在某个时间挂掉了,那么就可以它临时是不可用的。所以,为了保证 Elasticsearch 的高可用性,我们就应该尽量减少 Elasticsearch 的不可用时间。 那么怎样提高 Elasticsearch 的高可用性呢?这时集群的作用就体现出来了。假如 Elasticsearch 只放在一台服务器上,即单机运行,假如这台主机突然断网了或者被攻击了,那么整个 Elasticsearch 的服务就不可用了。但如果改成 Elasticsearch 集群的话,有一台主机宕机了,还有其他的主机可以支撑,这样就仍然可以保证服务是可用的。 那可能有的小伙伴就会说了,那假如一台主机宕机了,那么不就无法访问这台主机的数据了吗?那假如我要访问的数据正好存在这台主机上,那不就获取不到了吗

Elasticsearch、Logstash和Kibana Windows环境搭建(一)

旧巷老猫 提交于 2020-05-04 23:50:52
一、概述 ELK官网 https://www.elastic.co ELK由Elasticsearch、Logstash和Kibana三部分组件组成; Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。 Logstash是一个完全开源的工具,它可以对你的日志进行收集、分析,并将其存储供以后使用 kibana 是一个开源和免费的工具,它可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。 常见平台架构 ELK = Elasticsearch + Logstash + Kibana EFK = Elasticsearch + Flume + Kibana 简单架构: ELK+Redis 或 (Logstash/Flume)->(Kafka/Redis)->ES->Web 可更简单些: Client(Filebeat) --> LogServer(Logstash-->Elasticsearch-->Kibana ) (可以不用Logstash,Filebeat直接输出到ES) 复杂架构: 数据采集层[离线/实时数据,MySQL/ES/Logstash/Flume] ->数据传输层[Kafka

Webpack和Gulp,Webpack和Gulp的基本区别:

寵の児 提交于 2020-05-04 07:24:22
Gulp和Webpack的基本区别: gulp可以进行js,html,css,img的压缩打包,是自动化构建工具,可以将多个js文件或是css压缩成一个文件,并且可以压缩为一行,以此来减少文件体积,加快请求速度和减少请求次数;并且gulp有task定义处理事务,从而构建整体流程,它是基于流的自动化构建工具。 Webpack是前端构建工具,实现了模块化开发和文件处理。他的思想就是“万物皆为模块”,它能够将各个模块进行按需加载,不会导致加载了无用或冗余的代码。所以他还有个名字叫前端模块化打包工具。 就我而言 ,我在实际当中会将两种都选择混合使用。虽然两个都可以进行代码的压缩合并减少代码体积,但gulp.config.js中gulp的代码更加简单易懂,需要压缩合并谁就用哪个方法,而webpack样式合并需要在node环境下下载插件才能使用。另一点,gulp 是基于流的打包工具,需要谁,引用谁,并且他的压缩简单明了,后期维护起来方便,webpack则可以将具体的模块进行划分,需要哪个模块就加载哪个模块,实现按需加载,并且排除掉冗余代码,减少代码体积。 总结起来就是,gulp是基于流的自动化构建工具,但不包括模块化的功能,如果要用到的话,就需要引入外部文件,比如require.js等;而webpack是自动化模块打包工具,本身就具有模块化,并且也具有压缩合并的功能。二者侧重点不同

No Grunt. substack风格的使用npm run来自动化任务

孤人 提交于 2020-05-01 22:05:00
使用npm run来进行任务自动化,原文参见 substack博客 在node.js社区,最近很流行使用Grunt.js来进行任务管理。但是substack(mkdirp的作者)却对这个没有产生多少兴趣,他认为使用npm run命令就足够了。下面是对他原话的翻译: 现在JavaScript项目有一些不错的 工具 来进行自动化构建,但是我从没对这些东西产生过兴趣。因为仅需要一点点配置,这个很少人知道的命令 npm run 已经很完美地解决了我的需求。 package.json中的scripts 一般node.js项目中都会有一个package.json文件,这个文件可以手工编写,但一般是使用 npm init 这个命令来自动创建。它的作用大致相当于nginx中的nginx.conf这个文件。 在package.json中有一个scripts域,npm查看这个域里面的命令,然后执行相应的操作。比如 npm start 就是查看scripts里start相应的操作, npm test 就是查看scripts里test相应的操作。这些命令都是 npm run 的快捷操作。 npm start 相当于 npm run start , npm test 相当于 npm run test 。因此,我们可以在scripts域里放置一些其它操作,使用 npm run *** 来执行。 在执行 npm

部署 Express + TypeScript

a 夏天 提交于 2020-05-01 18:02:58
第一步、安装需要的配置 首先,我们将使用node包管理器(npm)来为我们的应用程序安装依赖项。 Npm与Node.js一起安装。 如果您还没有安装Node.js,可以通过homebrew程序完成。 安装Homebrew并更新它: $ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" $ brew update $ brew doctor 然后使用brew install命令安装node brew install node 第二步、创建项目 接下来,让我们使用npm init命令创建一个新项目。 $ mkdir ts_node_blog $ cd ts_node_blog $ npm init 在回答提示后,您将在项目文件夹中有一个新的package.json文件。 我们也添加一些自定义脚本。 首先,添加开发脚本。 这将使用nodemon模块来监视对快速Web应用程序的源文件的任何更改。 如果文件更改,那么我们将重新启动服务器。 接下来,添加grunt脚本。 这只是调用grunt任务运行器。 我们将在本教程后面安装它。 最后,添加启动脚本。 这将使用node来执行bin/www文件。 如果您使用的是Linux或Mac,则package