【问题标题】:Which import do i require to make use of hashrouter in KotlinJS React App我需要哪个导入才能在 KotlinJS React App 中使用 hashrouter
【发布时间】:2020-01-08 08:56:01
【问题描述】:

我正在使用以下步骤引导 KotlinJS + React 应用程序:

npm install -g create-react-kotlin-app
create-react-kotlin-app frontend
cd frontend
npm install kotlinx-coroutines-core
npm install @jetbrains/kotlin-react-router-dom

这给了我一个基本的 KotlinJS + React 应用程序

package.json 我可以看到我的路由器导入

{
  "name": "frontend",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "@jetbrains/kotlin-react-router-dom": "^4.3.1-pre.61",
    "kotlinx-coroutines-core": "^1.1.0",
    "react": "^16.7.0",
    "react-dom": "^16.7.0"
  },
  "devDependencies": {
    "react-scripts-kotlin": "3.0.3"
  },
  "scripts": {
    "start": "react-scripts-kotlin start",
    "build": "react-scripts-kotlin build",
    "eject": "react-scripts-kotlin eject",
    "gen-idea-libs": "react-scripts-kotlin gen-idea-libs",
    "get-types": "react-scripts-kotlin get-types --dest=src/types",
    "postinstall": "npm run gen-idea-libs"
  }
}

几个网站上的示例显示了类似的内容,但没有使用哪个导入

class RootComponent : RComponent<RProps, RState>() {
    override fun RBuilder.render() {
        hashRouter { // or "browserRouter"
            switch {
                route("/", IndexComponent::class, exact = true)
                route("/login", strict = true) {
                    login(providers = listOf("plain", "facebook"))
                    a(href = "#/") {
                        +"Back"
                    }
                }
                route<IdProps>("/user/:id") { props ->
                    div {
                        +"User id: ${props.match.params.id}"
                    }
                }
                redirect(from = "/redirect", to = "/redirected")
            }
        }
    }
}

未通过导入定义 hashRouter 会导致

src/app/App.kt:11:3: error: unresolved reference: hashRouter
                hashRouter {
  ^

我正在尝试 Ctrl + Space,但自动完成功能一点用都没有。

我缺少哪个导入?

【问题讨论】:

  • create-react-kotlin-app 仅限于配置,请尝试使用带有 gradle 和前端插件的 kotlin/js

标签: reactjs kotlin kotlin-js


【解决方案1】:

我遇到了同样的问题,并设法使用以下步骤解决了它。

在应用目录中,依次安装以下内容。

  1. npm i @jetbrains/kotlin-react-router-dom

  2. npm run gen-idea-libs

【讨论】:

    【解决方案2】:

    您还需要在依赖项中导入react-router-dom"

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-01-20
      • 2021-10-24
      • 2020-05-12
      • 2021-09-29
      • 2023-03-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多