import org.scalajs.dom
import scala.scalajs.js.JSApp
import scala.scalajs.js.annotation.JSExport
import scalatags.JsDom.all._
import scalatags.JsDom.implicits._
import scalatags.JsDom.svgAttrs._
import scalatags.JsDom.svgTags._
...
(1 to 3).map(i =>
line(
x1 := 175 + i, y1 := 100 + i,
x2 := 275, y2 := 0,
stroke := "rgb(255,0,0)",
strokeWidth := i
)), // KO ?!?
...
Error:(34, 19) type mismatch;
found : scala.collection.immutable.IndexedSeq[scalatags.JsDom.TypedTag[org.scalajs.dom.svg.Line]]
(which expands to) scala.collection.immutable.IndexedSeq[scalatags.JsDom.TypedTag[org.scalajs.dom.raw.SVGLineElement]]
required: scalatags.JsDom.Modifier
(which expands to) scalatags.generic.Modifier[org.scalajs.dom.raw.Element]
(1 to 3).map(i =>
^root.appendChild(
div(
(1 to 3).map(i =>
li(s"$i - Hello SVG !..."))).render) // OK !
val lines: JsDom.svgTags.SeqFrag[TypedTag[Line]] = (1 to 10).map(i =>
line(
x1 := 100 + 20 * i, y1 := 100,
x2 := 275, y2 := 0,
stroke := s"rgb(255, ${20 * i}, 0)",
strokeWidth := i)
)
--
You received this message because you are subscribed to the Google Groups "Scalatags" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scalatags+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
import scalatags.JsDom.implicits._
import scalatags.JsDom.svgAttrs._
import scalatags.JsDom.svgTags._
import org.scalajs.dom
import org.scalajs.dom.svg.Line
import scala.scalajs.js.JSApp
import scala.scalajs.js.annotation.JSExport
import scalatags.JsDom
import scalatags.JsDom.TypedTag
object SvgApp extends JSApp {
@JSExport
def main(): Unit = {
import scalatags.JsDom.all._
val root = dom.document.getElementById("app-placeholder")
root.appendChild(
div((1 to 3).map(i =>
li(s"$i - Hello SVG !..."))).render)
root.appendChild(svgExemple.render)
}
def svgExemple = {
val lines: JsDom.svgTags.SeqFrag[TypedTag[Line]] =
(1 to 10).map(i =>
line(
x1 := 100 + 20 * i, y1 := 100,
x2 := 275, y2 := 0,
stroke := s"rgb(255, ${20 * i}, 0)",
strokeWidth := i)
)
svg(
height := "800",
width := "500",
lines)
}
}