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

【Ext.js 初步入门】Ext.js 作用以及用法 概述

一、Ext.js的作用

首先我们需要了解类似Ext.js以及easyui类似产品的作用是什么。
我的理解是就是相当于一个组件库,它与bootstrap类似产品的区别在于,bootstrap与ext.js和easyui面向的问题不同,bootstrap面向的问题样式,ext.js和easyui面向的问题是功能。比如说,我要做一个表,bootstrap是怎么将这个表做好看,而ext.js所要做的是,我只要提供给这个表一些参数,他就可以把这个表交给我。

二、js相关的前置知识:有关于类的相关内容

js中构建类的定义如下

<script>
    class Point{
        //构造函数,当调用new的时候运行(我的理解)
        constructor(x,y){
            //this.x = x;
            //this.y = y;
            //数组解构,用来赋值this.x和this.y
            [this.x,this.y] = [x,y];
        }
        //打印点坐标
        print(){
            console.log("点坐标为:("+this.x+","+this.y+")");
        }
    }
    var point1 = new Point(1,1);
    point1.print();
</script>

在这里插入图片描述
js类中的类的继承

    class Line extends Point{
        constructor(x,y,x1,y1){
            super(x,y);
            [this.x1,this.y1] = [x1,y1];
        }
        printLine(){
            console.log("确定这条线的两个点分别为:("+this.x+","+this.y+")和("+this.x1+","+this.y1+")")
        }
    }
    var line1 = new Line(1,1,2,2);
    line1.printLine();

在这里插入图片描述

三、Ext.js 的构建以及使用

这里也是我自己的理解:
其实这个就是构造了一些类。然后供给我们调用,他们利用了一些方式设置了样式。

使用步骤:
1、引入相关文件:
相关主题的css文件:有许多种类,可以在 https://www.w3cschool.cn/extjs/extjs_environment_setup.html 该网站查看类别。(其余版本只是主题不同)

<link href="./ext-6.0.0/build/classic/theme-classic/resources/theme-classic-all.css" rel="stylesheet">

相关js所需要使用的文件

<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/extjs/6.0.0/ext-all.js"></script>

这个相关内容可以在 https://cdnjs.com/libraries/extjs/6.0.0?utm_source=cdnjs&utm_medium=cdnjs_link&utm_campaign=cdnjs_library 这个网站自行搜索。

2、使用框架

Ext.onReady(function() {
    Ext.create('Ext.Panel', {    //这里的Ext.Panel 我的理解是组件名,其实就是类名,我认为。但是他会包含一些css html的东西
        renderTo: 'helloWorldPanel’, //这个对应的是html中div的id号
        height: 100,
        width: 200,
        title: 'Hello world',
        html: 'First Ext JS Hello World Program'
    });
});

Ext.onReady() 这是Ext的准备函数,所有与Ext相关的代码都会在这个函数里面书写。(说明,这个里面的代码会利用Ext.js框架的方式渲染?是这个意思吧?)

在这里面要实例化一个类就是Ext.create()如上所示。

Ext.define 是定义一个类组件,也可以用于重写一个类组件。
这个方法可以接收三个参数,className(类的名字),data(Object对象),createFn(回调函数)。
第一个是定义类的名字;
第二个是键值对集合(这里面包含了有关于这个类的相关定义,比如一些方法以及参数);
第三个是回调函数。类的所有依赖项都准备就绪、类本身被完全创建后被调用(我的理解是,实例化之后这个回调函数会自动执行,有点像vue里面的created生命周期钩子)。
这个是重写(override)示例。

Ext.define("Friend",{
    name:"dudu",
    getName:function(){
        console.log("我的名字是"+this.name);
    }
},function(){
    alert('恭喜你,新交了一个朋友!')
})

var du = new Friend();
du.getName();

//用于重写原有类中的相关内容,不用重写的不用写
Ext.define("Friend1",{
    override:'Friend',
    name:"dudu2",
},function(){
    alert('恭喜你,又交了一个朋友!')
})

var du = new Friend();
//这个new 也可以用Ext.create(“Friend”); 来代替
du.getName();

类的继承

Ext.define("robotFriend",{
    extend:"Friend",
    name:"Carling"
},function(){
    alert("你怎么交了个机器人朋友!");
})

Ext.create("robotFriend").getName();

类的混入(Mixins):该特性的作用在于调用另一个类的方法。

Ext.define("Car",{
    name:"Carling's Car”,
    //混合写法,前面的属性名是
    mixins:{
        getName:"Friend"
    }
},function(){
    alert("恭喜你,获得了属于自己的小车车。")
})
 
Ext.create("Car").getName();

这个类就是可以调用ext.js所提供的组件库进行直接使用。


http://www.kler.cn/a/456203.html

相关文章:

  • 企业内训|AI大模型在汽车行业的前沿应用研修-某汽车集团
  • Java MySQL 连接
  • 自动化测试- 自动化测试模型
  • RabbitMQ - 1 ( 7000 字 RabbitMQ 入门级教程 )
  • PyTorch框架实现的简单手写数字识别模型,使用MNIST数据集进行训练和测试
  • 32单片机从入门到精通之硬件架构——总线系统(二)
  • word中文献引用[]符号的上下标格式修改
  • 【反转链表系列】力扣206,92,25
  • WINDOWS对话框模板结构简析
  • 接口自动化测试平台项目环境搭建
  • 如何使用Porcupine做一个安卓端语音唤醒demo
  • java相关学习文档或网站整理
  • 【MySQL】数据库初始化报错
  • Mono里运行C#脚本7—MonoImageStorage结构解析
  • 【Sentinel】初识Sentinel
  • 【小程序】全局配置window和tabBar
  • 在 Windows 11 下的 WSL - Ubuntu 24.04 中安装 Anaconda3
  • jmeter混合场景测试,设置多业务并发比例(吞吐量控制器)
  • 【AI日记】24.12.28 kaggle 比赛 2-16
  • uniapp实现APP、小程序与webview页面间通讯