📜  Vaadin-核心元素(1)

📅  最后修改于: 2023-12-03 14:48:15.707000             🧑  作者: Mango

Vaadin 核心元素

Vaadin 是一款用于构建 Web 应用程序的开源全栈框架。Vaadin 核心元素是构成 Vaadin 框架的核心类库和 API。本文将向您介绍与 Vaadin 核心元素相关的基本概念、类库和 API。

基本概念
1. UI

UI(用户界面)是您的 Vaadin 应用程序的最外层容器。在 UI 中,您可以布置应用程序中的各个组件并指定它们的交互方式和外观。

2. 组件

在 Vaadin 中,组件是构成用户界面的元素。例如,按钮、文本框、网格和菜单都是 Vaadin 组件。它们可以与用户进行交互,例如让用户输入文本或从菜单中选择操作。

3. 事件

事件是 UI 中组件与用户之间的通信机制。例如,当用户单击按钮时,该按钮就会触发一个单击事件,从而产生反应。

类库和 API

Vaadin 核心元素包括以下类库和 API:

1. vaadin-server

vaadin-server 为您提供基本的 Vaadin 核心服务。在 vaadin-server 中,您将找到以下类:

  • UI 类:表示用户界面的类。
  • Component 类:所有 Vaadin 组件的基类。
  • Event 类:所有事件的基类。
2. vaadin-client

vaadin-client 是用于构建客户端的核心 Vaadin 类库之一。在 vaadin-client 中,您将找到以下类:

  • Connector 类:连接客户端组件和服务器端组件。
  • Widget 类:所有客户端组件的基类。
3. vaadin-shared

vaadin-shared 是 Vaadin 在客户端和服务器端之间进行通信的中心类库。在 vaadin-shared 中,您将找到以下类:

  • ServerRpc 类:客户端与服务器端之间进行协议通信的接口。
  • SharedState 类:在客户端和服务器端之间共享状态的类。
代码示例

以下是一个简单的 Vaadin 应用程序示例,其中包括 UI 和按钮组件。

// 导入 Vaadin 核心类库
import com.vaadin.server.VaadinRequest;
import com.vaadin.ui.Button;
import com.vaadin.ui.Label;
import com.vaadin.ui.UI;
import com.vaadin.ui.VerticalLayout;

public class MyUI extends UI {

    @Override
    protected void init(VaadinRequest vaadinRequest) {
        // 创建垂直布局
        final VerticalLayout layout = new VerticalLayout();
        layout.setSpacing(true);

        // 创建标签组件,并在布局中添加
        final Label label = new Label("Click the button");
        layout.addComponent(label);

        // 创建按钮组件,并在布局中添加
        final Button button = new Button("Click me");
        button.addClickListener(e -> {
            // 单击事件处理器
            label.setValue("Thank you for clicking");
        });
        layout.addComponent(button);

        // 设置 UI 的内容
        setContent(layout);
    }

}

在上面的示例中,我们通过创建 UI 类、VerticalLayout 类、Label 类和 Button 类来创建一个简单的应用程序。在单击按钮时,将触发 ClickListener,并将标签文本更改为“Thank you for clicking”。

结论

Vaadin 核心元素是构成 Vaadin 框架的基础。在本文中,我们介绍了与 Vaadin 核心元素相关的基本概念、类库和 API。我们还演示了如何构建一个简单的 Vaadin 应用程序。如果您需要深入了解 Vaadin,建议您查看 Vaadin 官方文档并开始建立您自己的应用程序。