vue框架中props的typescript用法详解


Posted in Javascript onFebruary 17, 2020

什么是typescript

typescript 为 javaScript的超集,这意味着它支持所有都JavaScript都语法。它很像JavaScript都强类型版本,除此之外,它还有一些扩展的语法,如interface/module等。
typescript 在编译期会去掉类型和特有语法,生成纯粹的JavaScript。

Typescript 5年内的热度随时间变化的趋势,整体呈现一个上升的趋势。也说明ts越来越️受大家的关注了。

在vue中使用typescript时,需要引入vue-property-decorator库来兼容格式。

javascript写法

Vue.component('blog-post', {
 // 在 JavaScript 中是 camelCase 的
 props: ['postTitle'],
 template: '<h3>{{ postTitle }}</h3>'
})

typescript写法

@Prop({
  type: Array,
  default: function(): Array<LabelData> {
   return [];
  }
 })
 label_list: Array<LabelData> | undefined;

typescript和javascript在用法的区别,主要是需要严格规定label_list的类型。

但是,在vue里面,prop是不能赋初始值的。这个规则和typescript会发生矛盾,因此定义类型需要加undefined,避免typescript转义告警。

在代码中使用label_list时,需要用label_list as Array的语法,转换成正常的数组格式

参考链接

vue props

vue-property-decorator

总结

以上所述是小编给大家介绍的vue框架中props的typescript用法详解,希望对大家有所帮助!

Javascript 相关文章推荐
一个对于js this关键字的问题
Jan 09 Javascript
javascript DOM编程实例(智播客学习)
Nov 23 Javascript
jquery用data方法获取某个元素上的事件
Jun 23 Javascript
jQuery创建DOM元素实例解析
Jan 19 Javascript
基于Jquery实现万圣节快乐特效
Nov 01 Javascript
Bootstrap table使用方法详细介绍
Dec 09 Javascript
Vue网页html转换PDF(最低兼容ie10)的思路详解
Aug 24 Javascript
关于Vue组件库开发详析
Jul 01 Javascript
深入解析ES6中的promise
Nov 08 Javascript
详解Bootstrap 学习(一)入门
Apr 12 Javascript
Vue实现购物车基本功能
Nov 08 Javascript
vue实现禁止浏览器记住密码功能的示例代码
Feb 03 Vue.js
JS通用方法触发点击事件代码实例
Feb 17 #Javascript
JS前端广告拦截实现原理解析
Feb 17 #Javascript
JavaScript代码异常监控实现过程详解
Feb 17 #Javascript
windows下create-react-app 升级至3.3.1版本踩坑记
Feb 17 #Javascript
npx create-react-app xxx创建项目报错的解决办法
Feb 17 #Javascript
Vue的双向数据绑定实现原理解析
Feb 17 #Javascript
JavaScript函数Call、Apply原理实例解析
Feb 17 #Javascript
You might like
php class中self,parent,this的区别以及实例介绍
2013/04/24 PHP
php curl上传、下载、https登陆实现代码
2017/07/23 PHP
PHP var关键字相关原理及使用实例解析
2020/07/11 PHP
Javascript 跨域访问解决方案
2009/02/14 Javascript
Firefox window.close()的使用注意事项
2009/04/11 Javascript
判断脚本加载是否完成的方法
2009/05/26 Javascript
Google 地图API Map()构造器详解
2016/08/06 Javascript
Vue.js实现一个自定义分页组件vue-paginaiton
2016/09/05 Javascript
vue中渐进过渡效果实现
2016/10/27 Javascript
Javascript 实现放大镜效果实例详解
2016/12/03 Javascript
jquery validation验证表单插件
2017/01/07 Javascript
js实现简易聊天对话框
2017/08/17 Javascript
javascript连接mysql与php通过odbc连接任意数据库的实例
2017/12/27 Javascript
使用vue-cli导入Element UI组件的方法
2018/05/16 Javascript
swiper在vue项目中loop循环轮播失效的解决方法
2018/09/15 Javascript
vuejs2.0运用原生js实现简单拖拽元素功能
2020/08/21 Javascript
解决cordova+vue 项目打包成APK应用遇到的问题
2019/05/10 Javascript
使用Webpack提升Vue.js应用程序的4种方法(翻译)
2019/10/09 Javascript
javascript网页随机点名实现过程解析
2019/10/15 Javascript
Vue使用CDN引用项目组件,减少项目体积的步骤
2020/10/30 Javascript
Python实现SSH远程登陆,并执行命令的方法(分享)
2017/05/08 Python
Python实现曲线拟合操作示例【基于numpy,scipy,matplotlib库】
2018/07/12 Python
python 将列表中的字符串连接成一个长路径的方法
2018/10/23 Python
Python拼接字符串的7种方式详解
2020/03/19 Python
Python如何使用PIL Image制作GIF图片
2020/05/16 Python
Python rabbitMQ如何实现生产消费者模式
2020/08/24 Python
css3制作彩色边线3d立体按钮的示例(css3按钮)
2014/05/06 HTML / CSS
Tory Burch美国官方网站:美国时尚生活品牌
2016/08/01 全球购物
Soft Cotton捷克:来自爱琴海棉花的浴袍
2017/02/01 全球购物
倩碧英国官网:Clinique英国
2018/08/10 全球购物
激光脱毛、蓝光和护肤:Tria Beauty
2019/03/28 全球购物
售后服务科岗位职责范文
2013/11/13 职场文书
优秀教师获奖感言
2014/01/31 职场文书
法律系毕业生求职信
2014/05/28 职场文书
销售内勤岗位职责范本
2015/04/13 职场文书
离婚被告答辩状
2015/05/22 职场文书