首页 > 其他分享 >ts 装饰器测试

ts 装饰器测试

时间:2024-06-01 20:45:51浏览次数:23  
标签:console log nameLog ts rest 测试 tabc 装饰 target

interface mycbdInterface {
  alert(name: string): void,
  one?: string
}

//函数装饰器
const myconsole: MethodDecorator = (...rest) => {

  console.log(rest, "rest")

}

//类装饰器
const mylog2: ClassDecorator = (target) => {
  console.log(target, "target")

  target.prototype.one = "一个" //原型写入一些属性

}

//参数装饰器
const paramsLog: ParameterDecorator = (...rest) => {
  console.log(rest, "paramsLog")
}

//属性装饰器
const nameLog: PropertyDecorator = (target, propertyKey) => {
  console.log(target, "target-nameLog")
  console.log(propertyKey, "propertyKey-nameLog")
}


@mylog2
class mycbd implements mycbdInterface {
  @nameLog
  myname: string = "abc"

  @myconsole
  alert(@paramsLog name: string) {

  }

}

let tabc: mycbdInterface = new mycbd;

console.log(tabc.one) //打印出一个

console.log(tabc, "tabc")

tabc.alert("我传入的")

标签:console,log,nameLog,ts,rest,测试,tabc,装饰,target
From: https://www.cnblogs.com/jocongmin/p/18226368

相关文章

  • 软件测试进阶
    目录一、自动化测试1.概念2.Selenium2.1概念2.1.1Selenium是什么?2.1.2Selenium特点2.1.3工作原理2.2Selenium+Java环境搭配2.3定位元素2.3.1CSS语法2.3.2 XPath语法2.4应用2.4.1点击提交文本2.4.2模拟输入2.4.3清除文本2.4.4获取文本信息2.4.5......
  • ref和reaction的区别(以及TS中ref,computed函数会自动推断定义其泛型(一般不用自己动手))
    其次就是了解ref,reactive的区别。ref通过对象名.value来访问对象里的值,若对象里还有属性则访问其需要:对象名.value.属性名reactive则通过:对象名.属性名,来直接访问属性值其次,两者都是响应式对象。但如果对直接对reactive对象进行赋值,那么其会丢失响应性。代码示例如下:<scri......
  • 我了解的测试工具
    1. Jmeter:用于性能测试和负载测试。2. Selenium:主要用于Web应用的自动化功能测试。3. Postman:常用于接口测试。4. TestNG:测试框架。5. Appium:针对移动应用的自动化测试工具。6. LoadRunner:强大的性能测试工具。7. Bugzilla:缺陷跟踪工具。8.Cucumber:行为驱动测试框......
  • 儿童节变身小小音乐家,用ModelArts制作一张AIGC音乐专辑
    本文分享自华为云社区《儿童节变身小小音乐家,用ModelArts制作一张AIGC音乐专辑》,作者:华为云社区精选。儿童节,如何给小朋友准备一份特别的礼物?这份AIGC音乐专辑制作攻略一定要收下一段文字灵感就能编织出一曲悠扬悦耳的旋律童话、梦幻、探险……任何关键词都可以成为音乐......
  • Python factory_boy 生成测试数据
    factory_boy库中的工具,用于在测试中生成模拟数据:1.Sequence:用于生成一个唯一的序列。每次调用时,它都会返回一个新的值。这对于生成唯一的字段(如用户名或电子邮件地址)非常有用。例如,factory.Sequence(lambdan:f'user{n}@example.com')将生成一个唯一的电子邮件地址。......
  • css42 CSS Units
    https://www.w3schools.com/css/css_units.asp CSSUnitsCSShasseveraldifferentunitsforexpressingalength.ManyCSSpropertiestake"length"values,suchaswidth,margin,padding,font-size,etc.Lengthisanumberfollowedbyalengthun......
  • 配置开发环境、生成环境、测试环境
    在项目开发部署的过程中,一般都会有三套项目环境Development:开发环境Production:生产环境Test:测试环境例如:开发环境的mysql连接的是本地,生产环境需要连接线上的mysql环境 打开我们的后端项目,基于原来的application.yml文件再创建三个文件,命名如下:application-dev.yml......
  • macOS下使用bits/stdc++.h万能头文件
     macOS下使用bits/stdc++.h万能头文件1.终端中输入echo|g++-v-xc++-E-#include<...>searchstartshere:/usr/local/include/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/Library/Developer/CommandLineTools/usr/lib/clang/12.......
  • 测试onlyoffice在线预览文件功能
    HTML示例代码<!DOCTYPEhtml><htmllang="zh"><head><metacharset="UTF-8"><title>测试onlyoffice在线预览文件功能</title><scripttype="text/javascript"src="http://onlyoffice服务器ip:......
  • Vue3的自动化测试怎么做?详细说明一下常用的测试工具和框架
    随着前端技术的飞速发展,Vue3作为一个优秀的前端框架,已经广泛应用于各类项目中。在开发过程中,为了提升代码质量、减少运维成本,自动化测试变得尤为重要。不仅可以提高开发效率,还能确保产品的稳定性。那么,Vue3自动化测试该怎么做呢?本文将详细介绍常用的测试工具和框架。为......