1

我想在 Kotlin 中使用 react-infinite-grid http://ggordan.com/post/react-infinite-grid.html

我已经看到如何在 React-Kotlin 中导入节点模块?

下面的代码是我的参考:

无限网格.kt

@file:JsModule("react-infinite-grid")
@file:JsNonModule
package react.infinite.grid

import react.*

external interface InfiniteGridProps: RProps {
    var wrapperHeight: Int
    var entries: Array<*>
}

@JsName("default")
external val InfiniteGrid : RClass<InfiniteGridProps>

主文件

package index

import kotlinext.js.*
import react.dom.*
import kotlinx.browser.*
import react.infinite.grid.InfiniteGrid

fun main(){
    requireAll(require.context("src", true, js("/\\.css$/")))
    render(document.getElementById("root")) {
        InfiniteGrid{
            attrs.wrapperHeight = 400
            attrs.entries = arrayOf(1, 11, 111, 1111)
        }
    }
}

但是,我有错误:

错误:元素引用被指定为字符串(包装器),但没有设置所有者。这可能由于以下原因之一而发生:

  1. 您可能正在向功能组件添加 ref
  2. 您可能正在向未在组件的 render 方法中创建的组件添加 ref
  3. 您加载了多个 React 副本,请参阅https://reactjs.org/warnings/refs-must-have-owner.html了解更多信息。

在此处输入图像描述

我试过如何在 React-Kotlin 中导入节点模块?两种方式都不成功。

请帮助我

谢谢你


更新:

我发现react-infinite-grid无法支持react16.0.0 或更高版本。

与 Kotlin Wrap 没有关系。

4

0 回答 0