我的前端页面开发js简易有效环境
前端开发主要涉及到html, css(less/sass), javascript这几个方面的知识。真正的快速有效开发,必须实现所谓所见即所得。在构建生产时,可能需要使用gulp/grunt等task runner来将前端所有的任务串联起来,但是在一个简易开发环境中,有以下两种模式快速构建本地静态页面(html+css+js)开发环境。
browsersync 命令行方式启动server去serve静态页
1. nodejs安装;
2. npm 安装
npm install -g browser-sync
3. 在你需要开发的目录下,启动一个cmd,执行以下命令,开启web server,监视文件变更。
browser-sync start --server --directory --files ./*.*
这时,会自动启动一个默认浏览器,打开你的目录,你随便选择文件运行;
4. 对于javascript你可以在代码中随时加一个debugger命令让js引擎运行到这个位置时自动中断运行,以便供你检查运行的stack
var btn = document.getElementById("btn");
var ret = document.getElementById("ret");
btn.addEventListener('click', function(){
ret.innerText = 10 + num.value;
debugger
console.log(ret.innerText);
})
这种方案的优点是可以livereload,但是缺点是每次测试前要执行browsersync的命令行命令以便启动browsersync来执行web服务
直接通过sublime来集成一个web server
这种方式的思路是一切操作都在sublime中进行,通过过安装一个插件sublimeServer来实现sublime启动时自动启动内置的web server(默认8080端口),而该server将serve所有在sublime中打开的文件夹,
你只需要在sublime编辑界面右键选择open in sublimeserver就可以直接在web browser中以http://localhost:8080/xxx/yourfile.html的方式来编辑了!
这个方案的优点是非常简便,一切操作直接在sublime中搞定,但是无法实现livereload
还有一种方案是sublime直接集成browsersync但是这个比较傻瓜,因为browsersync是依赖于nodejs的,他把整个package都再安装一遍,太大了!!
综合上面几种方案,我觉得最好的方案是browsersync命令行+sublime修改文件触发livereload,但是如何解决命令行路径的烦人问题呢?
安装一个Terminal的sublime插件,添加如下配置信息:
"terminal": "C:\\WINDOWS\\system32\\cmd.exe",
"open_terminal_project_folder"
// commands
"parameters": ["/START", "%CWD%"]
以后需要在web server中调试一个文件时,直接在sublime text编辑界面, ctrl+shit+t打开terminal,运行以下命令:
browser-sync start --server --directory --files .
即可。但是上面ctrl+shift+t的方式在文件目录为中文目录时可能存在问题不能使用,那么另外一种绕过烦人的一系列cd命令到相应目录的方法是:1.在sublime中右键open containing folder;2.shift+右键;3.选择在此处打开cmd
我的前端页面开发js简易有效环境的更多相关文章
- css背景精华所在+前端页面开发流程
background属性 background属性是css中应用比较多,且比较重要的一个属性,它是负责给盒子设置背景图片和背景颜色的,background是一个复合属性,它可以分解成如下几个设置项: ...
- 前端页面开发,最低兼容IE 8的多设备跨平台问题解决!
项目要求: 网站能够使用PC.ipad.mobile phone正常访问 页面PSD版式宽度分别为1024px和750px 参考资料 使用CSS3 Media Queries,其作用就是允许添加表达式 ...
- 静态页面开发JS页面跳转加密解密URL和参数
页面跳转加密URL地址参数传递 window.location.href="foot.html?"+"good="+encodeURI(encodeURI(go ...
- X5的UI部分和传统Web页面开发的差异
http://doc.wex5.com/different-with-std-web-ui/#1 X5的UI部分和传统Web页面开发的差异 WeX5是跨端移动开发框架,BeX5是基于WeX5的企业快速 ...
- 自适应 or 移动前端页面布局的问题?
说出来,还请各位看官不要笑 - -.哥们至今不是很清楚页面的自适应和移动前端页面开发有什么区别 .有幸哪位看官清楚这些的话,希望能不吝赐教 .A.meta <meta name=& ...
- Spring Boot +Vue 项目实战笔记(二):前后端结合测试(登录页面开发)
前言:关于开发环境 每位 Coder 都有自己偏好的开发工具,从大的方面划分主要有文本编辑器流和 IDE 流两种,我有一段时间也喜欢用编辑器(Sublime Text.Vim),但对我来说开发效率确实 ...
- angular.js前端分层开发(页面和js代码分离,并将js代码分层)
一. 抽取模块成base.js文件// 定义模块: var app = angular.module("eshop",['pagination']); 二. 抽取服务成brandS ...
- MVVM开源框架Knot.js 教程2 - 大幅改变前端框架开发体验的Debugger
Knotjs教程系列 1.CBS初步 2.Knot.js Debugger(本文) ....持续增加中 Knot.js 教程2 - 改变前端框架开发体验的Debugger Debugger只是一个方便 ...
- JavaWeb开发使用jsp还是html做前端页面
一.概述 刚开始学习Javaweb开发的小伙伴都有一个疑惑:用jsp开发前端还是用HTML开发前端呢? 这个疑惑的来源主要是:刚接触完前端但又不深入学习js,接着学习jsp,发现老师们都一直用着jsp ...
随机推荐
- 在 Linux 服务器上部署 nginx 之后不能访问
原文地址:https://blog.csdn.net/lipeigang1109/article/details/73295373 解决办法:https://jingyan.baidu.com/art ...
- DP Intro - poj 1947 Rebuilding Roads(树形DP)
版权声明:本文为博主原创文章,未经博主允许不得转载. Rebuilding Roads Time Limit: 1000MS Memory Limit: 30000K Total Submissi ...
- Ubuntu 16.04 compare 软件安装
1软件官网 http://www.scootersoftware.com/download.php?zz=kb_linux_install 2.打开上述网址可看到安装信息 终端安装方式: wget h ...
- JAVA学习4:用Maven创建Struts2项目
采用struts版本:struts-2.3.8 一.创建一个web项目 参考前面文章,项目名:maven-struts-demo. 二.配置pom.xml文件添加struts2依赖 <pro ...
- centos7 配置php-fpm
1.复制相应的文件cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.confcp /usr/local/p ...
- 关于mouseleave事件触发的bug问题
在做下拉树搜索功能的时候,下方内容框需要一个鼠标移出时就隐藏的功能,于是使用mouseleave的方法, 但是出现了一个问题就是在点击树展开个隐藏的时候,也触发了leave事件,将下方的树进行隐藏,出 ...
- Stirng,Stringbuffer,Stringbuild的区别浅淡
String 1,Stirng是对象不是基本数据类型 2,String是final类,不能被继承.是不可变对象,一旦创建,就不能修改它的值. 3,对于已经存在的Stirng对象,修改它的值,就是重新创 ...
- git笔记四
git log --graph --oneline 中的--oneline相当于 --pretty=oneline但是可以显示更短小的id git reset --hard HEAD^ git res ...
- Spring 跨域请求
1.Jsp的跨域请求 后台jsp代码: <%@ page language="java" contentType="text/html; charset=UTF-8 ...
- Timer 控件
1. 设置属性 Enable = true 或调用 start方法后, *_Tick 方法不会立即执行,会先等待一个时间间隔 2.timer1不管你上次的事情是否做完,它都会每个一个时间间隔做它应该 ...