当前位置: 首页 > news >正文

3000元网站建设三年云匠网接单子容易吗

3000元网站建设三年,云匠网接单子容易吗,织梦网站地图模板下载,wordpress搜索错误一、什么是装饰器#xff1f; 装饰器是TypeScript脚本语言中的概念。 TypeScript的解释#xff1a;在一些场景下#xff0c;我们需要额外的特性来支持标注或修改类及其成员。装饰器#xff08;Decorators#xff09;为我们在类的声明及成员上通过元编程语法添加标注提供了… 一、什么是装饰器 装饰器是TypeScript脚本语言中的概念。 TypeScript的解释在一些场景下我们需要额外的特性来支持标注或修改类及其成员。装饰器Decorators为我们在类的声明及成员上通过元编程语法添加标注提供了一种方式。 在TypeScript中装饰器分为类装饰器、属性装饰器、方法装饰器、方法参数装饰器。 由此可知 装饰器的作用标注或修改类及其成员装饰器作用的目标类及其成员类方法 访问符属性或参数 大家都知道从Cocos Creator3.x 开始开发语言主要是TypeScript那么装饰器也是需要必须理解的。 二、CocosCreator 的装饰器 在理解CocosCreator 的装饰器之前我们需要先了解几个知识点CocosCreator序列化、Cocos Creator 的脚本编译时机 、CocosCreator装饰器执行时机。 CocosCreator序列化 编辑器中设置好了属性会被保存到资源文件中在使用的时候自动还原成设置好的属性。这就是CocosCreator的序列化。 脚本编译时机 在前面介绍vs code 脚本编辑工具的时候我们也有介绍到 脚本编译的时机修改项目脚本后重新返回 Cocos Creator 会自动的触发脚本编译。然后我们也配置了 VS Code 编译任务 配置完成后在VS Code 中按下快捷键 Ctrl Shift B 便会自动显示 CocosCreator compile执行即可编译。 感兴趣的朋友请前往查看CocosCreator3.8研究笔记二windows环境 VS Code 编辑器的配置。 装饰器执行时机装饰器对类行为的改变是代码编译时发生的而不是在运行时。也就是说装饰器的本质就是编译时执行的函数。 1、CC 类 1、什么是cc类 将ccclass 关键词做为注解添加在类上时这个类被称为CC类。 语法如下 ccclass(name) 如图PlayerControl 为cc类 2、CC 类的作用 CC 类注入了控制cocos creator 对该类对象的序列化、编辑器对此类对象的显示。 3、CC 类注意事项 CC类的名称是唯一的 不能以 cc.、internal. 作为前缀这是 Cocos Creator 的保留类名前缀 没声明 ccclass 的组件类无法作为组件添加到节点上 当CC类是组件时Node 可以通过组件类的CC类名查找到该组件 2、组件类装饰器 组件类装饰器只能用来修饰 Component 的子类。 (1)、executeInEditMode 正常情况下所有组件只会在运行时执行 在编辑器模式下并不会触发executeInEditMode 默认值为 false。 如果需要在编辑器模式下就执行我们可以将executeInEditMode 设置为’true’表示允许在编辑器模式下运行。 如下代码 const { ccclass, executeInEditMode } _decorator; ccclass(Example) executeInEditMode(true) export class Example extends Component {update (dt: number) {// 在编辑器下每帧执行} }(2)、requireComponent requireComponent 参数用来指定当前组件的依赖组件默认值为 null。 当组件添加到节点上时如果依赖的组件不存在引擎会自动将依赖组件添加到同一个节点防止脚本出错。 const { ccclass, requireComponent } _decorator;ccclass(Example) requireComponent(Sprite) export class Example extends Component { }(3)、executionOrder executionOrder 用来指定脚本生命周期回调的执行优先级。 该优先级设定只对 onLoad、onEnable、start、update 和 lateUpdate 有效对 onDisable 和 onDestroy 无效。 对于同一节点上的不同组件数值小的先执行数值相同的按组件添加先后顺序执行对于不同节点上的同一组件按节点树排列决定执行的先后顺序。 const { ccclass, executionOrder } _decorator;ccclass(Example) executionOrder(3) export class Example extends Component { }(4)、disallowMultiple 同一节点上只允许添加一个同类型含子类的组件防止逻辑发生冲突默认值为 false。 const { ccclass, disallowMultiple } _decorator;ccclass(Example) disallowMultiple(true) export class Example extends Component { }(5)、menu menu(path) 用来将当前组件添加到组件菜单中。 该菜单是添加在 属性检查器 面板中按下添加组件按钮后的下拉框内。 const { ccclass, menu } _decorator;ccclass(Example) menu(foo/bar) export class Example extends Component { }(6)、help 指定当前组件的帮助文档的 URL。 设置完成后在 属性检查器 中就会出现一个帮助图标点击即可打开帮助文档的 URL。 const { ccclass, help } _decorator; ccclass(Example) help(https://docs.cocos.com/creator/3.8/manual/zh/scripting/decorator.html) export class Example extends Component { }3、属性装饰器property 属性装饰器用于控制 Cocos Creator 编辑器中对该属性的序列化、属性检查器 中对该属性的展示等。 属性装饰器 property 可以被应用在 cc 类的属性或访问器上。 (1)、属性编辑器常见属性类型 基础属性CCInteger、CCFloat、CCBoolean、CCString cc 类型 数组类型[CCInteger]、[Node] 当使用基础属性类型或者 cc 类作为数组元素时将分别以整数数组和节点数组的形式在 属性检查器 中展示。 若值的类型是 JavaScript 原始类型 number、string、boolean则其类型分别对应 Creator 的CCFloat、CCString 和 CCBoolean 语法如下 property({ type:Node,visible:true})property({type:CCInteger,visible:true}) n:number5;property({ type:[Node],visible:true}) 下图是脚本文件 PlayerControl.ts 与Creator 编辑器属性检查器中属性展示 Cocos Creator额外提供几种装饰器可以快速声明 cc 类型。 装饰器对应的 property 写法type(t)property(t)integerproperty(CCInteger)floatproperty(CCFloat) 以下声明可以替代 property 的写法 integer // 声明属性的 cc 类型为整数 index 0;type([Node]) // 声明属性 children 的 cc 类型为 Node 数组 children: Node[] [];type(String) // 警告不应该使用构造函数 String。等价于 CCString。也可以选择不声明类型 text ;(2)、属性检查器中属性的可见性 需要注意的是不是所有定义的属性装饰器都是可见的在以下两种情况是不会显示在属性检查器 属性名是否以 _ 开头 会识别为 private 属性private 属性不会在编辑器组件属性面板上显示。visible属性值为false (3)、序列化serializable 属性默认情况下都会被序列化序列化后就会将编辑器中设置好的属性值保存到场景等资源文件中之后在加载场景时就会自动还原成设置好的属性值。如果不想序列化可以设置 serializable: false。 property({ serializable: false }) num 0;(4)、override 所有属性都会被子类继承如果子类要覆盖父类同名属性需要显式设置 override 参数否则会有重名警告 property({ tooltip: my id, override: true }) id ;(5)、group 当脚本中定义的属性过多且杂时可通过 group 对属性进行分组、排序方便管理。 同时还支持对组内属性进行分类。 group 写法包括以下两种 property({ group: { name } })property({ group: { id, name, displayOrder, style } })参数说明id分组 IDstring 类型是属性分组组号的唯一标识默认为 default。name组内属性分类的名称string 类型。displayOrder对分组进行排序number 类型数字越小排序越靠前。默认为 Infinity表示排在最后面。 若存在多个未设置的分组则以在脚本中声明的先后顺序进行排序。style分组样式目前支持 tab 和 section 样式。 默认为 tab。 (6)、get/set 使用 property _num:number1; set num(val){this._numval; } get num(){return this._num; }(7)、Cocos Creator 常用内置属性 Color(颜色) property(Color)color:ColorGradient (渐变) property(Gradient)gradient new Gradient();GradientRange (渐变色范围) 通过颜色、渐变色、双颜色或双渐变色控制颜色 property(GradientRange)gradientRange:GradientRange new GradientRange();
http://www.dnsts.com.cn/news/57457.html

相关文章:

  • 比较好的能组数学卷的网站做教案的wordpress底部广告
  • 站长工具亚洲辽宁建设厅投诉网站
  • 网站后台首页模板如何开网站做代销
  • 无锡 网站制作 大公司58同城做网站推广好不好
  • 青海餐饮网站建设宿迁二手房58同城急售
  • 网站404做多大甘肃做高端网站
  • 在哪找做网站的深圳的网站建设公司
  • 昆明学网站建设购物网站建设网站
  • 无锡有什么网站外国知名个人网站
  • 淘宝做网站的店咸宁网站seo
  • 如何做网站赚钱jsp小型网站开发代码
  • 中国做的很好的食品网站自己做网站不用WordPress
  • 电子商务网站规划书石嘴山网站建设
  • 电子商务网站建设及推广方案论文oa系统登录界面
  • 没有备案的网站使用微信坪地网站建设教程
  • 建设网站一定要电脑吗wordpress禁止标题关键词
  • 长沙招工 最新招聘信息廊坊seo软件
  • 做网站练手项目网络营销的方法和手段
  • 佛山cms建站升级wordpress很慢
  • 济南搜索引擎优化网站网站建设工具有哪些
  • 深圳机票网站建设网站及微信建设是否涉及知识产权
  • 网站icp不备案有关系吗互联网代运营公司
  • 营销型网站托管厦门的商城网站建设
  • 网站客户端怎么做的网站建设项目内控单
  • 温州电力建设有限公司网站5分钟的企业宣传片多少钱
  • 南江县建设局网站一个人是否可以做公司网站
  • 海口 做网站站长工具a级
  • 如何建设一家网站北京公司注册资金
  • wordpress多站点用户同步wordpress主题免费中文版
  • 福州网站制作建设制作一个网站需要多少小时