玩转Chrome workplace
简介
相信大家都知道Chrome Develop Tools中的workplace,这使得我们能够让本地的文件夹在Source面板下可以编辑。没错,这使得chrome同样可以成为我们可选的编辑器之一,但发现仅仅用这个功能,并不能显示workplace的优势,需要结合SourceMapping一起来使用。使得能够让浏览器直接加载解析本地源文件(有时,可结合代理,如fiddler一起使用)。从而达到加速开发的目的。
使用
1> 开启source mapping功能。
进入Settings -> General,勾选“Enalble JS source maps” 和 “Enable CSS source maps”。

不同版本chrome,表现形式不一样,大家自行调节即可。
2> 将源文件添加入workplace中。
在Source面板中,选择对应要映射的文件(或者空白处)右键,选择“Add folder to workplace”,然后选择对应的工程(或者对应的静态资源文件)(这里我映射文档平台整个工程),这样,我们就把对应的源文件加入到chrome的workplace中了。

这样,我们选择其中一个文件,如home.css,会发现,会找到两个home.css,一个是远程的(来自http://fe.baidu.com的),另一个则是本地的。如下图所示——

当然,我们可以使用选择settings中的workplace直接添加源文件——

3> 创建映射
右键需要映射的源文件(注意,这里是文件,而不是文件夹),选择“Map to network resource...”。


选择对应的远程请求,即可完成映射。注意,一旦一个文件进行了映射,默认会把对应的所有源文件及对应远程请求依据文件夹的排列进行一一映射。
此时,再去检索home.css,就只能找到源文件的home.css了,是因为对应的远程home.css请求已和workplace中的home.css进行了映射。
4> 更改css和js
创建完映射之后,直接调试样式面板中的样式,对应的源文件也进行了更改。从此更改样式减少了检索源文件再次更改对应样式的步骤。

对于js文件的更改,每一次的更改,控制台中都会出现“Recompilation and update succeeded.”的提示。
使用workplace及SourceMapping,对于事件驱动的js代码,能够实时看到更改的效果。免去了每次更改,刷新页面的过程。节省开发时间。
注意
- 当你所映射的源文件没有被直接解析并执行的时候,可使用其他代理工具(如fiddler进行代理)结合workplace和SourceMapping一起使用。
- 当请求的文件具有参数的时候(如某些静态资源文件是懒加载的,会加入时间戳参数,而且每一次请求中时间参数均会发生改变),对于种情况,chrome的SourceMapping支持并不完善。企图用mappding正则去设置时,由于每次设置mapping路径之后都会自动加上“/”,使得映射失效。这个地方确实是一个坑啊。看到的同学如果有解决方案,及时一起沟通交流哈。

总结
结合使用workplace及SourceMapping,其最主要的优势使得对css及js的更改直接反映到当前的预览页面及源文件。达到加速开发的效果。
如有不完善之处,欢迎与我讨论哈。
玩转Chrome workplace的更多相关文章
- [游记] HEOI2018酱油记
Day -1 在机房颓颓颓颓颓,晚上得知这次考试题本来是要给 ZJOI2018 用的,结果没用上..可想而知考试的难度.. 但愿不爆零 Day 0 坐了一上午火车,顺便找茁神犇拷了个 COD,然后接着 ...
- IPFS初窥
虽然区块链有很多令人兴奋的特性,但是也有其固有的缺点.比如,文件或者长度较长的文本信息就不适合存储在链上.那么如何解决这个缺点呢?一个解决方案就是IPFS(Interplanetary File Sy ...
- Chrome 控制台新玩法-向输出到console的文字加样式
Chrome 控制台新玩法-向输出到console的文字加样式 有兴趣的同学可以文章最后的代码复制贴到控制台玩玩. Go for Code 在正常模式下,一般只能向console 控制台输出简单的文字 ...
- 用图像识别玩Chrome断网小游戏
先来看一下效果 正文 最近在学习机器学习方面的知识,想着做个东西玩玩,然后就接触到了TensorFlow这个机器学习框架,这个框架封装了机器学习的一些常用算法. 不过要自己实现一套流程还是比较麻烦,我 ...
- Chrome 控制台新玩法-console显示图片以及为文字加样式
有兴趣的同学可以文章最后的代码复制贴到控制台玩玩. Go for Code 在正常模式下,一般只能向console 控制台输出简单的文字信息.但为了把信息输出得更优雅更便于阅读,除了cosole.lo ...
- 【转】Chrome 控制台新玩法-console显示图片以及为文字加样式
在正常模式下,一般只能向console 控制台输出简单的文字信息.但为了把信息输出得更优雅更便于阅读,除了cosole.log()方法外还可以调用 cosole.warn() 来输出警告信息,在控制台 ...
- 实用!8个 chrome插件玩转GitHub,单个文件下载小意思
作为程序员对 GitHub 应该都不会陌生,我经常沉迷其中,找一些惊艳的项目或者工具.不过用的时间久了,发现它的用户体验实在是不敢恭维,有时候会让你做很多重复操作,浪费不少时间. 比如我想单独下载一个 ...
- 玩爽了!直接在Chrome里抓取数据
一个小测试发现可以自动做题,于是想通过脚本的方式看能不能获取相应的题库,刚好可以学习一下JS异步操作.花了一天时间,总算跑顺利了,遇到了不少坑.记录下来分享. 1.JS如何顺序执行 JS有强大的异步操 ...
- 玩转Vim 编辑器
一:VIM快速入门 1.vim模式介绍 以下介绍内容来自维基百科Vim 从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆.几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数 ...
随机推荐
- Erlang第三课 ---- 创建和使用module
----------------小技巧----------------------------- 因为这一课开始,我们要使用Erlang文件操作,所以,我们期待启动shell的时候,当前目录最好是是我 ...
- 在myeclipse10.7.1中写代码有很多红x
代码没问题,但是很多代码前都有红x.在doc中执行都没有问题 jdk版本不对应 //第一步:菜单栏Window--Preferences--Java--Installed JREs--右边Add ...
- Redis操作+python
自动化接口测试中需要向redis中插入测试数据: 1. 连接redis: import redisself.r = redis.StrictRedis(host=env.REDIS_HOST, por ...
- 使用Jquery+EasyUI 进行框架项目开发案例讲解之五 模块(菜单)管理源码分享
http://www.cnblogs.com/huyong/p/3454012.html 使用Jquery+EasyUI 进行框架项目开发案例讲解之五 模块(菜单)管理源码分享 在上四篇文章 ...
- 创建泛类集合List以及数组转集合,集合转数组的应用
List<int> list = new List<int>(); list.Add(); list.Add(); list.Add(); list.AddRange(, , ...
- FCKeditor漏洞利用
FCKeditor漏洞利用 查看编辑器版本 FCKeditor/_whatsnew.html fckeditor/editor/dialog/fck_about.html —————————————— ...
- Percona XtraDB Cluster(转)
Percona XtraDB Cluster是针对MySQL用户的高可用性和扩展性解决方案,基于Percona Server .其包括了Write Set REPlication补丁,使用Galera ...
- javafx实现饼图统计效果图
- Dean Edwards大神写的addEvent库
直接晒代码: // written by Dean Edwards, 2005 // with input from Tino Zijdel, Matthias Miller, Diego Perin ...
- 微信公开课发布微信官方教程:教你用好微信JS-SDK接口
微信公众平台开放JS-SDK(微信内网页开发工具包),说明文档已经有相关使用方法和示例了,很多同学觉得不是很直观,为此微信公开课发布微信官方教程:教你用好微信JS-SDK接口. 1.分享类接口:支持获 ...