Поиск…


Вступление

Scala.js - это порт от Scala который компилируется на JavaScript , который в конце будет работать за пределами JVM . Он имеет преимущества, такие как сильная типизация, оптимизация кода во время компиляции, полная совместимость с библиотеками JavaScript.

console.log в Scala.js

println("Hello Scala.js") // In ES6: console.log("Hello Scala.js");

Функции жирной стрелки

val lastNames = people.map(p => p.lastName)
// Or shorter:
val lastNames = people.map(_.lastName)

Простой класс

class Person(val firstName: String, val lastName: String) {
  def fullName(): String =
    s"$firstName $lastName"
}

Коллекции

val personMap = Map(
  10 -> new Person("Roger", "Moore"),
  20 -> new Person("James", "Bond")
)
val names = for {
  (key, person) <- personMap
  if key > 15
} yield s"$key = ${person.firstName}"

Манипулирование DOM

import org.scalajs.dom
import dom.document

def appendP(target: dom.Node, text: String) = {
  val pNode = document.createElement("p")
  val textNode = document.createTextNode(text)
  pNode.appendChild(textNode)
  target.appendChild(pNode)
}

Использование с SBT

Sbt зависимость

libraryDependencies += "org.scala-js" %%% "scalajs-dom" % "0.9.1" // (Triple %%%)

Бег

sbt run

Работа с непрерывной компиляцией:

sbt ~run

Скомпилируйте один файл JavaScript:

sbt fastOptJS


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow