我正在尝试使用Vaadin构建应用程序。我注意到日历组件没有包含在vaadin 8中。 是否有可能以某种方式使用Vaadin 8中Vaadin 7的日历?
答案 0 :(得分:1)
长版
根据v8 release notes(目前为8.0.5),有一些legacy components(包括日历)尚未移植到v8,但包含在单独的包中。 migration section简要描述了兼容性依赖项包含的内容:
迁移到Vaadin Framework 8.0
Vaadin Framework 7应用程序在迁移到迁移时需要进行一些更改 Vaadin Framework 8.除了更新依赖关系之外,还有 引用Framework 7样式数据绑定和使用它的组件 需要更新才能使用新的Framework 8样式数据绑定或 在单独的软件包中使用兼容版本。
Vaadin Framework 7旧版数据绑定API的兼容版本 包中提供了组件(Form除外) 模块vaadin-compatibility-server中的com.vaadin.v7, vaadin-compatibility-shared等可以代替使用 vaadin-server,vaadin-shared等包 vaadin-compatibility-client-compiled包含widgetset com.vaadin.v7.Vaadin7WidgetSet可以用来代替 DefaultWidgetSet 即可。请注意,widgetset编译为 Vaadin7WidgetSet编译需要至少1G的内存。确保 这个,添加-Xmx1G到 pom.xml文件中的vaadin-maven-plugin配置。
所有使用Reindeer,Runo,Chameleon或Base主题的应用程序 必须包含vaadin-compability-themes包。
有些Vaadin Framework 7附加组件在版本8中不起作用 - 请 检查Vaadin Directory for Framework版本8支持中的加载项
此外,从Vaadin文档的migration部分有关包裹:
更新Maven依赖项
对于基于maven的项目,包括兼容性包只是一个 改变所需不兼容性的artifactId的问题 依赖于兼容性变体。例如,在的情况下 将vaadin-server依赖项从Framework版本7.7.6更改为 8.0.0需要更改
<dependency> <groupId>com.vaadin</groupId> <artifactId>vaadin-server</artifactId> <version>7.7.6</version> </dependency>
到
<dependency> <groupId>com.vaadin</groupId> <artifactId>vaadin-compatibility-server</artifactId> <version>8.0.0</version> </dependency>
包括兼容性功能以及不兼容性 那些,或者
<dependency> <groupId>com.vaadin</groupId> <artifactId>vaadin-server</artifactId> <version>8.0.0</version> </dependency>
仅包含Framework 8功能。完整的兼容性列表 可用于Framework 8的软件包如下:
- vaadin兼容服务器
- vaadin兼容的客户端
- vaadin兼容的客户端编译
- vaadin兼容性共享
- vaadin兼容性主题
...和widgetset:
Widgetset更改
在项目中使用兼容包时,需要进行更改 默认的vaadin客户端widgetset的引用 com.vaadin.DefaultWidgetSet 到包含兼容性的那个 软件包 com.vaadin.v7.Vaadin7WidgetSet ,可在 vaadin-compatibility-client-compiled maven依赖。通常情况下, widgetset重新编译将自动为您处理,除了 对于以下两种应手动处理的情况:
您的项目定义了自定义窗口小部件集,在这种情况下您需要 确保继承 Vaadin7WidgetSet
项目中的UI使用注释定义其widgetset
@Widgetset("com.vaadin.DefaultWidgetSet")
,应更改为 的@Widgetset("com.vaadin.v7.Vaadin7WidgetSet")
强>Vaadin7WidgetSet的widgetset编译至少需要1G 记忆。要确保这一点,请将-Xmx1G添加到 pom.xml文件中的vaadin-maven-plugin配置。
TL; DR版
您可能需要将以下2个依赖项添加到项目中才能访问兼容性组件和窗口小部件集:
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-compatibility-server</artifactId>
<version>8.0.5</version>
</dependency>
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-compatibility-client-compiled</artifactId>
<version>8.0.5</version>
</dependency>
...从com.vaadin.DefaultWidgetSet
更改为com.vaadin.v7.Vaadin7WidgetSet
并重新编译您的widgetset。
答案 1 :(得分:0)
https://vaadin.com/directory#!addon/vaadin-calendar提到vaadin 8目前不支持。
所以不,它还不可能