【发布时间】:2017-02-13 11:06:50
【问题描述】:
我想用 ScalaJS 和 React 引导一个简单的项目。
它使用fastOptJS 构建,然后我用Chrome 打开我的index.html,运行时出现此错误:
显然,React 的运行时在浏览器中不可用。在documentation 中没有提到任何单独的React 导入,只是build.sbt 的配置。
我真的不明白我做错了什么。
这是我的index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>The Scala.js Tutorial</title>
</head>
<body>
<!-- Include Scala.js compiled code -->
<script type="text/javascript" src="./target/scala-2.12/hello-fastopt.js"></script>
<!-- Run tutorial.webapp.TutorialApp -->
<script type="text/javascript">
web.TutorialApp().main();
</script>
</body>
</html>
这是我的TutorialApp.scala
package web
import japgolly.scalajs.react._
import org.scalajs.dom
import scala.scalajs.js.JSApp
import scala.scalajs.js.annotation.JSExport
import japgolly.scalajs.react.ReactComponentB
import japgolly.scalajs.react.vdom.prefix_<^._
object TutorialApp extends JSApp {
@JSExport
def main(): Unit = {
println("Hello world!")
val App =
ReactComponentB[Unit]("App")
.render(_ => <.div("Hello!"))
.build
ReactDOM.render(App(), dom.document.body)
}
}
【问题讨论】:
标签: sbt scala.js scalajs-react