vue中typescript装饰器的使用方法超实用教程


Posted in Javascript onJune 17, 2019

VueConf ,尤大说, Vue 支持 Ts 了,网上关于 Vue + Ts 的资料有点少, 楼主踩了一个星期坑,终于摸明白了 修饰器 的玩法,下面我们就来玩下 Vue 的 decorator 吧

1,data 值的声明

vue中typescript装饰器的使用方法超实用教程 

在这里 public 声明的是公有属性, private 声明的是私有属性,私有属性要带 下划线

蓝色框里的内容是声明组件,在每个组件创建时都要带上, Components 中的写法如下

vue中typescript装饰器的使用方法超实用教程 

上面是 普通写法 ,下面是 懒加载写法

2.@Prop 父组件传值给子组件

vue中typescript装饰器的使用方法超实用教程 

父组件使用 v-bind 传递与js版本一样,在父组件接受是使用修饰器

@Prop({type:‘类型'})

readonly:传递的参数名称!:类型

一定要写全,不然后报错,也可以写个 接口 约束 类型

3.@Emit  子组件给父组件传值

vue中typescript装饰器的使用方法超实用教程 

@Emit('传给父组件的值')

callback

父组件接收与 js 版本一致

4.@Provide @Inject  混入

vue中typescript装饰器的使用方法超实用教程 

这个没什么说的, @Provide 声明一个值 , 在其他地方用 @Inject 接收

5.@Model 双向绑定

vue中typescript装饰器的使用方法超实用教程 

这个也很简单,v-model绑定一个值,在子组件使用 @Model('页面展示的值') 值类型

这里我偷懒,声明一样的 (手动笑哭)

5.@Watch   监听函数

vue中typescript装饰器的使用方法超实用教程 

@Watch('监听的值',{深度监听})

callback 回调函数

6.钩子函数的声明

与js基本一致

Ts          -> Js
public create() {} -> create() {}
public mounted() {}  ->  mounted() {}
eg:
private _changeMsg() {} ->  methods: {
_changeMsg() {}
}
eg:
private get _changeValue() {} -> computed: {
_changeValue() {}
}
public destory() {}      -> destory() {}

7.@State vuex中state的值

vue中typescript装饰器的使用方法超实用教程 

@State(state => state数据里的参数) 页面展示的值

!!!!!! 注意vuex的数据都要在钩子函数里 调用 !!!!!!!!!!!!!!

8.@Mutation  vuex中的mutation

vue中typescript装饰器的使用方法超实用教程 

使用与 @State 一致

!!!!!!!!!!!!!需要注意的是要写一个接口 将state里面的数据类型写进去,如果直接用

state编辑器会报错 , 当然声明any类型也是可以的, 但是用了Ts还是尽量不要用any吧  

    !!!!!!!!!!!!!!!!!!!!

9.@Action vuex 中的action

vue中typescript装饰器的使用方法超实用教程 

@Action('action里的方法名') 页面展示的方法

!!!!!!!!  由于异步,需要加async await 不然会一直处在padding状态,

 使用promise也是可以的            !!!!!!!!!!!!!!!

至于 vue.config.js 网上很多方法,有兴趣的可以去找下,在这里贴下自己的

vue中typescript装饰器的使用方法超实用教程vue中typescript装饰器的使用方法超实用教程

     vue中typescript装饰器的使用方法超实用教程

      !!!!!!!!!!!!!!!!!!!!!!!

       使用时一定引入修饰器  

以上就是小编给大家姐的vue中typescript装饰器的使用方法超实用教程,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
jquery插件jquery倒计时插件分享
Dec 27 Javascript
Javascript中使用parseInt函数需要注意的问题
Apr 02 Javascript
JQuery实现鼠标移动图片显示描述层的方法
Jun 25 Javascript
基于jquery实现在线选座订座之影院篇
Aug 24 Javascript
JS组件Bootstrap实现弹出框效果代码
Apr 26 Javascript
three.js中3D视野的缩放实现代码
Nov 16 Javascript
layui 表格的属性的显示转换方法
Aug 14 Javascript
详解微信小程序实现跑马灯效果(附完整代码)
Apr 29 Javascript
webpack4.0+vue2.0利用批处理生成前端单页或多页应用的方法
Jun 28 Javascript
对Layer弹窗使用及返回数据接收的实例详解
Sep 26 Javascript
微信小程序云函数添加数据到数据库的方法
Mar 04 Javascript
JS实现iframe中子父页面跨域通讯的方法分析
Mar 10 Javascript
简单学习5种处理Vue.js异常的方法
Jun 17 #Javascript
js/jQuery实现全选效果
Jun 17 #jQuery
解决微信浏览器缓存站点入口文件(IIS部署Vue项目)
Jun 17 #Javascript
通过说明与示例了解js五种设计模式
Jun 17 #Javascript
简单了解vue.js数组的常用操作
Jun 17 #Javascript
送你43道JS面试题(收藏)
Jun 17 #Javascript
通过实例学习React中事件节流防抖
Jun 17 #Javascript
You might like
77A一级收信机修理记
2021/03/02 无线电
Mysql和网页显示乱码解决方法集锦
2008/03/27 PHP
关于PHP二进制流 逐bit的低位在前算法(详解)
2013/06/13 PHP
PHP检测用户是否关闭浏览器的方法
2016/02/14 PHP
php htmlentities()函数的定义和用法
2016/05/13 PHP
精通Javascript系列之Javascript基础篇
2011/06/07 Javascript
JS+CSS设置img在DIV中只显示Img垂直居中的部分
2013/10/24 Javascript
JS 实现BASE64_ENCODE和BASE64_DECODE(实例代码)
2013/11/13 Javascript
Javascript模块化编程详解
2014/12/01 Javascript
利用CSS3在Angular中实现动画
2016/01/15 Javascript
Bootstrap每天必学之折叠
2016/04/12 Javascript
JavaScript必知必会(九)function 说起 闭包问题
2016/06/08 Javascript
基于jQuery和Bootstrap框架实现仿知乎前端动态列表效果
2016/11/09 Javascript
利用Vue.js实现求职在线之职位查询功能
2017/07/03 Javascript
Windows下Node爬虫神器Puppeteer安装记
2019/01/09 Javascript
layui下拉框获取下拉值(select)的例子
2019/09/10 Javascript
layui添加动态菜单与选项卡 AJAX请求的例子
2019/09/25 Javascript
vue中使用vue-pdf的方法详解
2020/09/05 Javascript
vue+iview使用树形控件的具体使用
2020/11/02 Javascript
Vue +WebSocket + WaveSurferJS 实现H5聊天对话交互的实例
2020/11/18 Vue.js
Python 初始化多维数组代码
2008/09/06 Python
Python的Bottle框架中实现最基本的get和post的方法的教程
2015/04/30 Python
python 剪切移动文件的实现代码
2018/08/02 Python
一步步教你用python的scrapy编写一个爬虫
2019/04/17 Python
如何利用Python模拟GitHub登录详解
2019/07/15 Python
python 实现控制鼠标键盘
2020/11/27 Python
英国最大的运动营养公司之一:LA Muscle
2018/07/02 全球购物
结婚典礼证婚词
2014/01/11 职场文书
珍惜时间演讲稿
2014/05/14 职场文书
教师廉洁自律承诺书
2014/05/26 职场文书
小学生常见病防治方案
2014/06/06 职场文书
离婚协议书怎么写2014
2014/09/30 职场文书
2014社会治安综合治理工作总结
2014/12/04 职场文书
2014年校务公开工作总结
2014/12/18 职场文书
2016中秋节问候语
2015/11/11 职场文书
python爬虫--selenium模块
2021/03/31 Python