编者语:这几年都在跨平台移动开发中努力,Xamarin/Cordova/RemObject都是业界比较通用的方案。而开发工具有Visual Studio /Xamarin/ Fire等。就在昨天微软发布并开源了Visual Studio Code 的Cordova开发工具,今天就和大家谈谈。

Visual Studio Code 快发布差不多一年了,在Connect 2015中已经开始支持各类型的插件。而新的一年,将会是Visual Studio Code 很重要的一年。新年开了个不错的头,就是Cordova的开发工具。这个工具支持Cordova的开发,调试,和相关插件的智能提示。我们就来看看几个功能。

1. 安装,在Mac上打开Visual Studio Code 按cmd+shift+p 使用ext install 进行安装

2. 编码,其实这个你就等于是有智能提示地写一些Cordova的支持。例如你添加一些插件,如相机等。

3. 你可以通过Visual Studio Code 快速编译你的Cordova项目 cmd+B

4. 可以方便在Debug中根据不同需要调用不同的运行环境

以上四点,你可以在Visual Studio Market 中找到 (https://marketplace.visualstudio.com/items?itemName=vsmobile.cordova-tools)

5. 代码调试,这个也得感谢微软Cordova的团队,他们帮我解决了在VS Code 上Ionic 2调试的问题。下面我分享给大家。

首先你必须对现在Ionic 2的webpack.config.js进行调整

a) 由于VS Code 的Cordova 插件是通过绑定source-map进行调试的 所以先安装

npm install source-map-loader strip-sourcemap-loader

b) 在webpack.config.js 中添加 devtool:'source-map' ,去生成app.bundle.js.map

c) 指定在调试期间,所对应的位置,在output添加devtoolModuleFilenameTemplate: 'file:///[absolute-resource-path]'

d) 在loaders最后设置一个,这个是告诉编译器都需要把所有js加载到sourcemap当中

  1. {
  2. test: /\.js$/,
  3. loader: 'strip-sourcemap'
  4. }

e) 切记这里不要用Cordova Build, 要用ionic build所以这里比较麻烦地需要在命令行运行,当然你可以通过设置Task去做

但这个我觉得还是命令行方便(我在这里还是花了不少时间,还是自己大意)

f) 在app.bundle.js设置对应的断点即可,我现在还没有办法去调试ts(这个估计是webpack的问题,但是我相信很快会有对应的               解决方案),但是可以直接调试ts生成的js文件,如图我在app.bundle.js设置了断点,当我在运行debug时就可以去到断点位                 置了。

Visual Studio Code 随着插件功能的加入,现在已经可以作为生产力工具了。我也已经把它作为生产力工具多时去完成云加端的开发。Cordova插件的推出为跨平台开发带来了不少推动作用,当然接下来我更期待的是ReactNative和Xamarin。

Cordova in VisualStudio Code的更多相关文章

  1. 使用 visualstudio code 编辑器调试执行在 homestead 环境中的 laravel 程序

    由于之前做 .net 开发比较熟悉 visualstudio,所以自 visualstudio code 发布后就一直在不同场合使用 vscode ,比如前端.node等等.最近在做 laravel ...

  2. ionic3 打包报错[ERROR] An error occurred while running cordova prepare (exit code 1):

    解决办法:删除并重新添加平台以使用以下命令解决问题: cordova platform rm ios cordova platform add ios 如果执行 ionic cordova build ...

  3. 使用VisualStudio或VisualStudio Code作为代码比较工具

    最近改了了几个还是用SVN托管的老项目,用的客户端是TortoiseSVN,本身这个工具比较好用,就是那个内置的比较文件差异的Diff工具太简陋了,由于TortoiseSVN支持第三方Diff查看器的 ...

  4. Docker最全教程之使用 Visual Studio Code玩转Docker(二十)

    前言 VS Code是一个年轻的编辑器,但是确实是非常犀利.通过本篇,老司机带你使用VS Code玩转Docker——相信阅读本篇之后,无论是初学者还是老手,都可以非常方便的玩转Docker了!所谓是 ...

  5. 用 Visual Studio Code 调试运行在 homestead 环境中的 laravel 程序

    由于之前做 .net 开发比较熟悉 visualstudio,所以自 visualstudio code 发布后就一直在不同场合使用 vscode ,比如前端.node等等.最近在做 laravel ...

  6. VS Code(待补充)

    使用! 然后Tab  快速生成html文档结构 快速生成一个类   .类名  会有提示 .container.box .col-6*2 VisualStudio Code怎么同时编辑多处?

  7. Visual Studio Code + Docker

    前言 VS Code是一个年轻的编辑器,但是确实是非常犀利.通过本篇,老司机带你使用VS Code玩转Docker——相信阅读本篇之后,无论是初学者还是老手,都可以非常方便的玩转Docker了!所谓是 ...

  8. 2018 .NET开发者调查报告: .NET Core 是怎么样的状态

    4月28日,在公众号里发起<.NET Core 使用调查>,该调查为期一周,有近3300名开发者参与. 已经使用.net core  的人数只有44%,计划使用.net core 比例达到 ...

  9. 分享一个.NET平台开源免费跨平台的大数据分析框架.NET for Apache Spark

    今天早上六点半左右微信群里就看到张队发的关于.NET Spark大数据的链接https://devblogs.microsoft.com/dotnet/introducing-net-for-apac ...

随机推荐

  1. devDependencies 和 dependencise 的区别

    在使用 npm install 安装模块或者插件的时候,在命令中可以添加俩种参数把他们写入到 pakeage.json 文件里面去: --save ( 简写 -S ) --save-dev ( 简写 ...

  2. iOS通知传值

    NSMutableDictionary *params = [NSMutableDictionary dictionary]; params[@"loginName"] = @&q ...

  3. Sass 基本函数

    Sass 中的常用函数 一.字符串函数 1. unquote($string): 删除字符串前后的引号,删除一对引号,如果这个字符串没有带有引号,将返回原始的字符串. 示例: .text1 { con ...

  4. Centos下Mysql密码忘记解决办法

    1.修改MySQL的登录设置: # vim /etc/my.cnf 在[mysqld]的段中加上一句:skip-grant-tables 例如: [mysqld] datadir=/var/lib/m ...

  5. Activity与Service的回收

    Android开发中,一个Application,运行在一个进程中.这个Application的各种组件(四种组件),通常是运行在同一个进程中的.但是,并不是绝对的.由于某种需求,比如,你可以设置Ap ...

  6. POJ 2456 Aggressive cows ( 二分搜索)

    题目链接 Description Farmer John has built a new long barn, with N (2 <= N <= 100,000) stalls. The ...

  7. splay:优雅的区间暴力!

    万年不更的blog主更新啦!主要是最近实在忙,好不容易才从划水做题的时间中抽出一段时间来写这篇blog 首先声明:这篇blog写的肯定会很基础...因为身为一个蒟蒻深知在茫茫大海中找到一个自己完全能够 ...

  8. Linux后台研发面试题

    本系列给出了在复习过程中一些C++后台相关面试题,回答内容按照笔者的知识点掌握,故有些问题回答较为简略 1.信号的生命周期 一个完整的信号生命周期可以用四个事件刻画:1)信号诞生:2)信号在进程中注册 ...

  9. python实战===爬取所有微信好友的信息

    ''' 爬取所有T信好友的信息 ''' import itchat from pandas import DataFrame itchat.login() friends=itchat.get_fri ...

  10. linux===进程操作

    ps -ef ps -aux|grep chat.js a:显示所有程序 u:以用户为主的格式来显示 x:显示所有程序,不以终端机来区分 kill -9 nohup python da.py & ...