TypeScript是微软公司推出的开源的类型化脚本语言,目的是用于为弱类型的javaScript提供强类型的识别和感知功能,同时它提供了类、接口、继承等相关在javaScript中不容易实现的功能,语法类似C#,简洁易懂,是构建大中型Web应用的一门非常理想的语言。

ü 通过这篇文章,你可以学到:

认识WisOne IDE

在WisOne IDE中编写TypeScript代码

在属性面板更改控件的属性

在WisOne IDE中运行TypeScript代码

本文源代码链接:http://www.wisone.com/app/sample/helloworld.frm

尽管微软在Visual Studio 2012中通过插件包的方式可以使用TypeScript的智能提示和编译功能,但是对于很多开源世界而来的开发人员来说,装个数G的Visual Studio来开发TypeScript有些大材小用,还好现在互联网上有一些专门用于辅助TypeScript开发的平台,WisOne智云平台就是其中具有代表性的一个Web平台。

通过如下的网址进入智云平台:

http://www.wisone.com/ide

WisOne IDE网页呈现了一个基于Web的IDE集成化开发环境,它使用TypeScript作为开发语言,并提供了可视化的开发与设计工具,如图1.1所示。

WisOne目前还只是预览阶段,但是随着WisOne团队的不断升级和完善,相信不久的将来,我们就可以在WisOne上使用TypeScript来开发专业性的Web应用了。

Example 1:Hello Word!

接下来让我们来了解一下如何在WisOne平台上学习TypeScript,就从经典的Hello Word开始,步骤如下所示:

(1)从工具栏上拖一个按钮,如图1.2所示。

(2)选中按钮,可以在属性面板中设置按钮的属性信息,是不是很像Visual Studio或者是Delphi等集成化开发环境。在属性面板中,设置Caption属性为“Hello World”,以更改按钮的显示文字。

(3)双击按钮,将进入到WisOne的代码编辑环境,可以看到WisOne自动产生了单击事件代码存根,在空白处输入代码即可,如图1.3所示。

由图中可以发现,WisOne的代码编辑器有智能提示功能,这对于初学TypeScript的人来说,实在太妙了,不用安装庞大的Visual Studio,也可以直接玩转TypeScript的语法提示。

(4)在代码存根位置输入如下的代码:

button1Click(sender: Core.Classes.TComponent){
//我的第一行TypeScript代码
this.button1.caption="你好,世界";
}

这行代码用于更改按钮的标题,可以看到,WisOne的IDE对TypeScript进行了很好的整合,这让整个Web IDE特别的具有Windows版开发工具的味道。

好了,已经迫不急待的要运行代码了,单击WisOne IDE左上角的“运行”按钮,如图1.4所示。

可以看到WisOne在一个新的页面上开启了我们的窗口,单击按钮,是不是发现按钮的标题已经发生了改变,如图1.5所示。

Example 2:使用TypeScript类型

接下来看一下TypeScript中如何使用类型,javaScript是不需要显示定义类型的,为变量的赋值决定了其类型,这种弱类型的语法极不利于大型可扩展的应用开发,而TypeScript提出了类型的概念,在定义变量时可以指定其类型,这个示例中向窗口中再次添加一个按钮,然后编写如下的示例代码:

module Unit1{//定义一个函数,可以看到TypeScript的强类型代码

function Greeter(greeting: string) {this.greeting = greeting;}export class TForm1 extends Core.Forms.TForm{btnType: Core.StdCtrls.TButton;btnTypeClick(sender: Core.Classes.TComponent){//构造一个Greeter类的实例var greeter = new Greeter("Hello world");//访问Greeter类的属性this.btnType.caption=greeter.greeting;}}}

在Unit1单元名称下面,定义了一个函数Greeter,可以看到这个函数的形式参数是string类型的值,在函数体内定义了一个属性。

在按钮的单击事件处理代码中,首先实例化了Greeter类的实例,然后调用其属性,如果为Greeter的构造函数传递一个非字符串类型的值,WisOne将会抛出错误提示,如图1.6所示:

可以看到,WisOne在编译TypeScript时,将错误提示显示在调试面板中,非常便于我们了解其中的语法错误,TypeScript提供了类型功能,这对于开发大型可扩展的应用来说,确实是一个必要的功能。

将123456删除,替换为一个字符串,然后运行程序,这次成功运行通过,单击按钮将显示Greeter中的属性值,如图1.7所示。

小结

本文介绍了在WisOne平台上开发TypeScript的基础知识,讨论了WisOne IDE的组成,以及如何使用WisOne编写TypeScript代码,通过一个经典的“Hello World”来演示如何在WisOne平台上编写TypeScript代码。最后通过一个类型化的TypeScript示例,介绍了WisOne平台的调试功能。

关于WisOne平台的更多信息,可以通过如下的网址获取:

http://www.wisone.com/

转载于:https://www.cnblogs.com/lincats/p/3328780.html

在WisOne平台上学习TypeScript相关推荐

  1. linux arm 汇编学习,如何在LINUX平台上学习GNU ARM汇编

    本例说明如何在LINUX平台上学习GNU ARM汇编. 1.软件环境 vmware 5.0 + redhat 9.0 + skyeye 1.2.4 + arm-elf 工具 2. 源文件 a.s -- ...

  2. 华为在深度学习平台上的优化实践

    "Kubernetes Meetup 中国 2017"--北京站3.18落幕啦!本次分享嘉宾彭靖田来自华为,他的分享题目是<华为在深度学习平台上的优化实践>.实录将从深 ...

  3. 【官宣】BSV工程师能力认证项目在CSDN推出线上学习平台

    去年11月,上海可一澈科技有限公司(以下简称"可一科技")与CSDN联合推出了BSV区块链开发工程师能力认证项目(以下简称"BSV工程师认证").今天,BSV工 ...

  4. 企业如何做好线上学习平台运营?

    在信息技术发展应用和疫情长期蔓延的双向影响下,现今线上学习平台已经越来越受到企业培训的重视. 线上学习平台就是将培训课程录制好上传到平台供学员观看吗?如果仅仅只是这样的话,那和视频平台有何不同?平台不 ...

  5. MAC X or Ios平台上的学习工具

    2019独角兽企业重金招聘Python工程师标准>>> 本专题介绍了20款左右的应用,由于数量很多,不可能把每个应用都介绍得很详细.以后笔者还会专门写一些帖子介绍某一个应用的使用心得 ...

  6. ngss for oracle,学习笔记:Oracle bbed工具在Windows平台上兼容9i 10g 11g 12c运

    天萃荷净 配置使用在Windows操作系统中中运行Oracle bbed程序兼容9i 10g 11g 12c 学习ORACLE三剑客:互联网,ORACLE资料,交流.今天在朋友的帮助下,了结了一个心结 ...

  7. 作为前端开发,如何高效学习 TypeScript

    大家好,我是若川.有朋友跟我说最近面试前端候选人,问到关于 JavaScript 的一些少见误区问题,候选人很多都没回答上来,他很诧异,一个从国际大厂出来的面试者,竟然对 JavaScript 的一些 ...

  8. 在OpenShift平台上验证NVIDIA DGX系统的分布式多节点自动驾驶AI训练

    在OpenShift平台上验证NVIDIA DGX系统的分布式多节点自动驾驶AI训练 自动驾驶汽车的深度神经网络(DNN)开发是一项艰巨的工作.本文验证了DGX多节点,多GPU,分布式训练在DXC机器 ...

  9. Pentaho平台上加仪表盘插件步骤

    Pentaho平台上加仪表盘插件步骤 下面我将最近学习的在Pentaho平台上加仪表盘插件的步骤稍微整理了一下,希望对有需要的朋友有些帮助. 1. 解压插件包:cdf-de_0.2.tar.bz2(这 ...

最新文章

  1. redis集群之主从架构
  2. 关于JAVA编译时找不到自定义包的问题
  3. easyUI的combobox设置隐藏和显示
  4. Linux 下 nginx反向代理与负载均衡
  5. uvc摄像头代码解析1
  6. Axure高保真移动端电商app通用模板、axure高保真移动端教育app通用模板、旅游app通用模板、电商app、教育app、旅游app 、直播、在线教育、旅游、Axure原型、rp原型
  7. mybatis分页应用
  8. 常用的组播保留地址列表
  9. 「中间件」消息中间件如何实现每秒几十万的高并发写入?
  10. 创业工场麦刚:不要把创业美化
  11. jarvisoj_typo
  12. 使用pandas和xlwt,xlrd结合操作excel实现自动化
  13. 中文数字转换成阿拉伯数字(一千二百三十四万五千六百七十八-->12345678)
  14. button 点击的涟漪效果
  15. 成功并不是总要劳其筋骨,饿其体肤,成功的密码是: 专注!
  16. Python PIL Image的使用
  17. PPIO边缘云聚焦音视频底层技术,探索元宇宙“登月工程”
  18. 基本流程图与跨职能流程图
  19. 手把手教你炫酷慕课网视频启动导航的完美实现
  20. css 首字下次,css first-letter实现首字(字母)下沉效果

热门文章

  1. 《数据库SQL实战》获取所有部门当前manager的当前薪水情况
  2. ThreadLocal父子线程传递实现方案
  3. js for循环给object数组赋值
  4. 介个杀手不太冷锁屏壁纸
  5. 条款33:避免遮掩继承而来的名称
  6. Android实现ExpandableTextView可扩展TextView
  7. Oracle 监听配置详解(转载)
  8. 合理的嵌入式开发学习路线
  9. struts2.0和jQuery1.5的json问题
  10. 【2011-04-06】SQL Server 2000 日志传送搭建