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中汉字显示乱码问题(已解决)
Dec 27 Javascript
JavaScript设计模式之策略模式实例
Oct 10 Javascript
JQuery插件jcarousellite的参数中文说明
May 11 Javascript
深入理解JavaScript函数参数(推荐)
Jul 26 Javascript
JS实现随机颜色的3种方法与颜色格式的转化
Jan 05 Javascript
webpack+vue中使用别名路径引用静态图片地址
Nov 20 Javascript
vue在使用ECharts时的异步更新和数据加载详解
Nov 22 Javascript
bootstrap 日期控件 datepicker被弹出框dialog覆盖的解决办法
Jul 09 Javascript
vscode中eslint插件的配置(prettier配置无效)
Sep 10 Javascript
layui字体图标 loading图标静止不旋转的解决方法
Sep 23 Javascript
Vue如何获取数据列表展示
Dec 11 Javascript
vite+vue3.0+ts+element-plus快速搭建项目的实现
Jun 24 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 读取文件头判断文件类型的实现代码
2013/08/05 PHP
thinkPHP学习笔记之安装配置篇
2015/03/05 PHP
简单谈谈PHP vs Node.js
2015/07/17 PHP
dvwa+xampp搭建显示乱码的问题及解决方案
2015/08/23 PHP
Zend Framework入门知识点小结
2016/03/19 PHP
抛弃 PHP 代价太高
2016/04/26 PHP
php发送http请求的常用方法分析
2016/11/08 PHP
jquery实现智能感知连接外网搜索
2013/05/21 Javascript
jQuery中parents()和parent()的区别分析
2014/10/28 Javascript
基于jQuery全屏焦点图左右切换插件responsiveslides
2015/09/07 Javascript
javascript实现一个简单的弹出窗
2016/02/22 Javascript
JS实现给对象动态添加属性的方法
2017/01/05 Javascript
Bootstrap按钮组简单实现代码
2017/03/06 Javascript
Angular.js基础学习之初始化
2017/03/10 Javascript
原生javascript如何实现共享onload事件
2020/07/03 Javascript
在Python中进行自动化单元测试的教程
2015/04/15 Python
Python中规范定义命名空间的一些建议
2016/06/04 Python
Python探索之静态方法和类方法的区别详解
2017/10/27 Python
pandas中的DataFrame按指定顺序输出所有列的方法
2018/04/10 Python
python中协程实现TCP连接的实例分析
2018/10/14 Python
python文档字符串(函数使用说明)使用详解
2019/07/30 Python
python找出列表中大于某个阈值的数据段示例
2019/11/24 Python
python与c语言的语法有哪些不一样的
2020/09/13 Python
CSS3实现瀑布流布局与无限加载图片相册的实例代码
2016/12/22 HTML / CSS
Banggood官网:面向全球客户的综合商城
2017/04/19 全球购物
Tiqets荷兰:出售欧洲最美丽的景点和博物馆门票
2018/01/09 全球购物
Joie官方网上商店:购买服装和女装配饰
2018/06/05 全球购物
Anya Hindmarch官网:奢侈设计师手袋及配饰
2018/11/15 全球购物
大学生蛋糕店创业计划书
2014/01/13 职场文书
初中生自我评价
2014/02/01 职场文书
12月红领巾广播稿
2014/02/13 职场文书
社区灵活就业证明
2014/11/03 职场文书
党的群众路线教育实践活动个人对照检查材料(四风)
2014/11/05 职场文书
元旦主持词开场白
2015/05/29 职场文书
2016年读书月活动总结范文
2016/04/06 职场文书
Linux中各个目录的作用与内容
2022/06/28 Servers