typescript 简介
TypeScript
是 JavaScript
的强类型版本。然后在编译期去掉类型和特有语法,生成纯粹的 JavaScript
代码。由于最终在浏览器中运行的仍然是 JavaScript
,所以 TypeScript
并不依赖于浏览器的支持,也并不会带来兼容性问题。
TypeScript
是 JavaScript
的超集,这意味着他支持所有的 JavaScript
语法。并在此之上对 JavaScript
添加了一些扩展,如 class
/ interface
/ module
等。这样会大大提升代码的可阅读性。
与此同时,TypeScript
也是 JavaScript ES6
的超集,Google
的 Angular 2.0
也宣布采用 TypeScript
进行开发。这更是充分说明了这是一门面向未来并且脚踏实地的语言。
强类型语言的优势在于静态类型检查,具体可以参见 http://www.zhihu.com/question... 的回答。概括来说主要包括以下几点:
- 静态类型检查
- IDE 智能提示
- 代码重构
- 可读性
❝静态类型检查可以避免很多不必要的错误, 不用在调试的时候才发现问题
❞
项目搭建
- Generate project in current directory?是否在当前目录创建项目
![ec6c7aad97d105b727efe1e2e5f61689.png](https://i-blog.csdnimg.cn/blog_migrate/5280a2ecc8a78f75af8abffd0a222c55.png)
- Choose Vue version,Babel,Ts,Router,Vuex,CSS Pre-processor
![f6735dd8611b02daba3b692e5d6aae2f.png](https://i-blog.csdnimg.cn/blog_migrate/4743b7d35f0b47da24867767c7ac17d8.png)
- Use class-style component syntax?
![e907dc01079467a25b9b30a62d829a50.png](https://i-blog.csdnimg.cn/blog_migrate/6e28dafb8dee60cb68d78d051a509ea5.png)
- Use Babel alongside Typescript
![cf1ecf141de9b03191a65f2382f66e51.png](https://i-blog.csdnimg.cn/blog_migrate/e843d10c9424424fe1299dfcf4194394.png)
- Use history mode for router?
![26b1e69cdcda8e0d2a2753cc2208b17a.png](https://i-blog.csdnimg.cn/blog_migrate/483400701f50259f58c102bc2160f951.png)
- Pick a CSS Pre-processor:Less
![1234a74a1b5c32bd38541dc48339f42e.png](https://i-blog.csdnimg.cn/blog_migrate/f1862bbdbe53c3befb641c0f22ac6560.png)
- Where do you prefer placing config for Babel,ESLint,
![f2acb06a53d8e35b162d80a132b406aa.png](https://i-blog.csdnimg.cn/blog_migrate/72370da01f35aaadd109af49124d500e.png)
- Save this as a preset for future project?
- Save preset as
![4fb8a292eda7ae7f6bb0c30cf234bbad.png](https://i-blog.csdnimg.cn/blog_migrate/c5b4af7565ab702ff7e5c1681ca0906f.png)
可能需要等待几分钟安装依赖,安装成功之后,使用 yarn serve
运行
![21076aa45056c3bdc09eded7a5b76fd0.png](https://i-blog.csdnimg.cn/blog_migrate/d1a30a964764dd3c50de46981084c33c.png)
概览
Vue 类组件是一个库,可让你使用类的语法制作 Vue 组件。例如,我们可以使用 Vue 类语法制作一个计算器组件:
在 src/components
新建 Counter.vue
。html
部分跟往常一样。
<template>
<div>
<button v-on:click="decrement">-button>
{{ count }}
<button v-on:click="increment">+button>
div>
template>
重点部分就是 javascript
:
您可以通过使用@Component
装饰器为类添加注释,从而以直观和标准的类语法定义组件数据和方法。您可以简单地用类样式的组件替换组件定义,因为它等同于组件定义的普通options对象样式。
通过以类样式定义组件,不仅可以更改语法,还可以利用某些ECMAScript语言功能,例如类继承和装饰器。Vue类组件还提供了一个用于mixin继承的mixins
助手,以及一个轻松创建自己的装饰器的createDecorator
函数。
您可能还需要检查Vue Property Decorator提供的@Prop
和@Watch
装饰器