Skip to content

Commit a719e76

Browse files
committed
Step 5: Using jQuery
1 parent a3c7921 commit a719e76

File tree

3 files changed

+14
-13
lines changed

3 files changed

+14
-13
lines changed

build.sbt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,8 @@ scalaVersion := "2.13.1"
77
scalaJSUseMainModuleInitializer := true
88

99
libraryDependencies += "org.scala-js" %%% "scalajs-dom" % "1.0.0"
10+
libraryDependencies += "be.doeraene" %%% "scalajs-jquery" % "1.0.0"
11+
12+
skip in packageJSDependencies := false
13+
jsDependencies +=
14+
"org.webjars" % "jquery" % "2.2.1" / "jquery.js" minified "jquery.min.js"

scalajs-tutorial-fastopt.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,12 @@
55
<title>The Scala.js Tutorial</title>
66
</head>
77
<body>
8-
<button id="click-me-button" type="button" onclick="addClickedMessage()">
8+
<button id="click-me-button" type="button">
99
Click me!
1010
</button>
1111

12+
<!-- Include JavaScript dependencies -->
13+
<script type="text/javascript" src="./target/scala-2.13/scala-js-tutorial-jsdeps.js"></script>
1214
<!-- Include Scala.js compiled code -->
1315
<script type="text/javascript" src="./target/scala-2.13/scala-js-tutorial-fastopt.js"></script>
1416
</body>
Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,18 @@
11
package tutorial.webapp
22

3-
import scala.scalajs.js.annotation.JSExportTopLevel
4-
5-
import org.scalajs.dom
6-
import org.scalajs.dom.document
3+
import org.scalajs.jquery._
74

85
object TutorialApp {
96
def main(args: Array[String]): Unit = {
10-
appendPar(document.body, "Hello World")
7+
jQuery(() => setupUI())
118
}
129

13-
def appendPar(targetNode: dom.Node, text: String): Unit = {
14-
val parNode = document.createElement("p")
15-
val textNode = document.createTextNode(text)
16-
parNode.appendChild(textNode)
17-
targetNode.appendChild(parNode)
10+
def setupUI(): Unit = {
11+
jQuery("body").append("<p>Hello World</p>")
12+
jQuery("#click-me-button").click(() => addClickedMessage())
1813
}
1914

20-
@JSExportTopLevel("addClickedMessage")
2115
def addClickedMessage(): Unit = {
22-
appendPar(document.body, "You clicked the button!")
16+
jQuery("body").append("<p>You clicked the button!</p>")
2317
}
2418
}

0 commit comments

Comments
 (0)