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

9.class的基本用法

// 1. class的基本用法 继承 和 类型约束 implements// 2. class的修饰符 readonly private protected public// 3. super原理// 4. 静态方法// 5. get set// private 只能在内部使用(不允许给子类和外部使用)// protected 给子类和内部去使用(不允许给外部使用)// public 默认是public, 可以给子类和内、外部使用interfaceOptions{el:string|HTMLElement,}interfaceVueCls{options:Optionsinit():void}// 虚拟dom 简单版interfaceVnode{tag:string,// div section headertext?:string,// 123children?:Vnode[],}classDom{constructor(){}privatecreateElement(el:string){returndocument.createElement(el)}// 填充文本的方法privatesetText(el:HTMLElement,text:string|null){el.textContent=text}// 渲染函数protectedrender(data:Vnode){letroot=this.createElement(data.tag)this.setText(root,data.textasstring)if(data.children&&Array.isArray(data.children)){data.children.forEach(item=>{constchild=this.render(item)root.appendChild(child)})}returnroot}}// 不允许外部使用// let dom = new Dom()// dom.// implements类型约束classVueextendsDomimplementsVueCls{// readonly options: Optionsoptions:Optionsstatica:stringconstructor(options:Options){// 为什么继承之后这里要加一个super?// 父类的prototype.constructor.call// super相当于先调用父类的构造函数,得先初始化父类的属性先有父在有子super()// 初始化下父类,一定要放在最上面// super('小满') // 初始化下父类,一定要放在最上面this.options=optionsthis.init()// super. 通过super.调用父类的方法}staticxxx(){console.log(this.a)}staticversion(){// 只能调用别的静态属性和方法this.a='123'this.xxx()return'1.0.0'}init():void{// 虚拟dom 就是通过js 去渲染我们这个真实的domletdata:Vnode={tag:'div',text:'123',children:[{tag:'section',text:'我是子节点1'},{tag:'section',text:'我是子节点2',children:[{tag:'section',text:'我是子节点3'},]},]}letapp=typeofthis.options.el==='string'?document.querySelector(this.options.el):this.options.el app?.appendChild(this.render(data))}}letvue=newVue({el:'#app'})Vue.version()// 静态方法vue.init()// Promise.all 这是一个静态方法classRef{_value:anyconstructor(value:any){this._value=value}getvalue(){returnthis._value+'vvv'}setvalue(newValue){this._value=newValue+'小满'}}// Object.defineProperty一样的constref=newRef('哈哈哈哈')console.log(ref.value)ref.value='坏人'console.log(ref.value)
http://www.jsqmd.com/news/434116/

相关文章:

  • 针对紫外观瞄和制导的无源干扰技术
  • 2026年评价高的不锈钢水箱实力工厂怎么选 - 品牌宣传支持者
  • 2026年河南新中式凉亭选购指南:6家实力厂家深度解析 - 2026年企业推荐榜
  • 10.抽象类
  • 2026武汉纸杯定制工厂权威评测:荣圣纸业何以成为行业标杆? - 2026年企业推荐榜
  • 11.元组类型
  • 13.类型推论和类型别名
  • 聚乙烯醇纤维实力厂家如何选?2026年行业评测与选型指南 - 2026年企业推荐榜
  • 2026年Q1高定板材口碑榜:优质厂家深度评测与选型指南 - 2026年企业推荐榜
  • 与DeepSeek的对话:Ai在抓捕马杜罗和轰炸哈梅内伊的行动中到底参与了多深?
  • 2026年上海阻燃板材选购指南:聚焦信誉与实力 - 2026年企业推荐榜
  • SpringBoot+Vue 智能家居销量数据分析_jrabo管理平台源码【适合毕设/课设/学习】Java+MySQL
  • 全屋定制板材怎么选?2026年五大供应商深度对比与推荐 - 2026年企业推荐榜
  • 2026年靠谱的深圳网站建设实战经验推荐公司 - 品牌宣传支持者
  • 健身俱乐部网站信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】
  • SpringBoot+Vue 考研互助交流平台平台完整项目源码+SQL脚本+接口文档【Java Web毕设】
  • kvm虚拟化9
  • 2026年湖北咸宁名表回收服务评测:如何筛选正规可靠的团队? - 2026年企业推荐榜
  • 2026年知名的深圳网站建设案例丰富推荐公司 - 品牌宣传支持者
  • 2026年第一季度咸宁名牌箱包回收服务商深度解析与选择攻略 - 2026年企业推荐榜
  • 2026年评价高的广州网站建设高性价比推荐公司 - 品牌宣传支持者
  • 2026年初漯河黑牛奶品牌如何选?深度评测与选型指南 - 2026年企业推荐榜
  • 2026年山东书籍翻译市场:专业服务商选择与深度解析 - 2026年企业推荐榜
  • 中老年五红牛奶服务商怎么选?2026年头部品牌综合评测 - 2026年企业推荐榜
  • 智能时代的意义守护
  • 2026年初济南公证书翻译服务市场口碑五强深度解析 - 2026年企业推荐榜
  • 2026自动化采购指南:欧姆龙授权经销商、欧姆龙代理商有哪些、欧姆龙自动化供应商实力盘点。汉泓中国欧姆龙代理商就是靠谱 - 栗子测评
  • 2026权威汇总:欧姆龙授权经销商、欧姆龙代理商、欧姆龙自动化供应商选型不踩坑。汉泓中国欧姆龙代理商正品渠道速查 - 栗子测评
  • 2026年足浴实体门店选择标准:数据驱动的选型指南与头部服务商解析 - 2026年企业推荐榜
  • CAN SLIM