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 相关文章推荐
javascript编程起步(第三课)
Feb 27 Javascript
js中将URL中的参数提取出来作为对象的实现代码
Aug 16 Javascript
同时使用n个window onload加载实例介绍
Apr 25 Javascript
jQuery 写的简单打字游戏可以提示正确和错误的次数
Jul 01 Javascript
JavaScript代码实现左右上下自动晃动自动移动
Apr 08 Javascript
jquery实时获取时间的简单实例
Jan 26 Javascript
详解webpack提取第三方库的正确姿势
Dec 22 Javascript
在JS循环中使用async/await的方法
Oct 12 Javascript
JavaScript实现无限级递归树的示例代码
Mar 29 Javascript
ES6的解构赋值实例详解
May 06 Javascript
微信小程序引入Vant组件库过程解析
Aug 06 Javascript
React + Threejs + Swiper 实现全景图效果的完整代码
Jun 28 Javascript
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访问查询mysql数据的三种方法
2006/10/09 PHP
PHP和Mysqlweb应用开发核心技术 第1部分 Php基础-1 开始了解php
2011/07/03 PHP
Mac OS下配置PHP+MySql环境
2015/02/25 PHP
PHP实现的一致性Hash算法详解【分布式算法】
2018/03/31 PHP
Laravel框架基于中间件实现禁止未登录用户访问页面功能示例
2019/01/17 PHP
js 匿名调用实现代码
2009/06/19 Javascript
IE8对JS通过属性和数组遍历解析不一样的地方探讨
2013/05/06 Javascript
js、jquery图片动画、动态切换示例代码
2014/06/03 Javascript
JavaScript字符串对象的concat方法实例(用于连接两个或多个字符串)
2014/10/16 Javascript
JavaScript获取数组最小值和最大值的方法
2015/06/09 Javascript
javascript实现选中复选框后相关输入框变灰不可用的方法
2015/08/11 Javascript
JS实现网页Div层Clone拖拽效果
2015/09/26 Javascript
javascript随机抽取0-100之间不重复的10个数
2016/02/25 Javascript
Json解析的方法小结
2016/06/22 Javascript
jQuery插件Validation快速完成表单验证的方式
2016/07/28 Javascript
Vue-cli@3.0 插件系统简析
2018/09/05 Javascript
200行HTML+JavaScript实现年会抽奖程序
2019/01/22 Javascript
小程序根据手机机型设置自定义底部导航距离
2019/06/04 Javascript
TensorFlow高效读取数据的方法示例
2018/02/06 Python
Flask框架各种常见装饰器示例
2018/07/17 Python
Python制作动态字符图的实例
2019/01/27 Python
python 读取文件并把矩阵转成numpy的两种方法
2019/02/12 Python
基于PyQt4和PySide实现输入对话框效果
2019/02/27 Python
django基于cors解决跨域请求问题详解
2019/08/06 Python
.img/.hdr格式转.nii格式的操作
2020/07/01 Python
python下载的库包存放路径
2020/07/27 Python
Django+Uwsgi+Nginx如何实现生产环境部署
2020/07/31 Python
html5启动原生APP总结
2020/07/03 HTML / CSS
斯洛伐克电子产品购物网站:DATART
2020/04/05 全球购物
法律专业个人实习自我鉴定
2013/09/23 职场文书
校园新闻广播稿5篇
2014/10/10 职场文书
2014年计划生育工作总结
2014/11/14 职场文书
2014年节能降耗工作总结
2014/12/11 职场文书
学前班语言教学计划
2015/01/20 职场文书
抖音动画片,皮皮虾,《治愈系》动画在用这首REMIX作为背景音乐,Anak ,The last world with you完整版
2022/03/16 杂记
Python中re模块的元字符使用小结
2022/04/07 Python