我很难遵循FP。当人们说“更习惯风格”时,我必须明白:99%的Java库不适用于Kotlin和Scala的FP惯用风格。那么,我需要Spring Boot来与Vaadin快速启动。所以我需要注入一些豆。如何将IoC注入到Kotlin顶层函数中?我甚至使用IoC容器吗?
package com.x.ui
import com.vaadin.icons.VaadinIcons
import com.vaadin.navigator.Navigator
import com.vaadin.ui.MenuBar
fun createMenuBar(navigator: Navigator): MenuBar {
val menuBar = MenuBar()
menuBar.setHeight(null)
menuBar.setWidth(null)
menuBar.addItem("Dashboard", VaadinIcons.COG,
{ navigator.navigateTo("Dashboard") } as MenuBar.Command)
return menuBar
}
那么如何在这种情况下将SpringNavigator
注入此函数?
因为我有几个顶级功能到目前为止,我没有@Component既没有@Bean,什么是使用Spring IoC for Kotlin的惯用方式?我仅限于使用课程,或者我们有技巧来做到这一点?
顶级功能相当于Java静态方法。我不确定它是否合理,或者是将注入依赖关系的好实践。 作为一个良好的做法,恕我直言,我会建议你把这些函数放在你使用依赖注入进行配置的类中。 – Mario