Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

394
Vistas
Scala.js import JS script da error: inicio esperado de definición

Tengo un script JS script.js que contiene una clase MyType . Me gustaría usar los métodos de la clase add() y divide dentro de un script de scala App.scala .

Usando Scala.js y JSImport , importo script.js a App.scala .

Sin embargo, cuando trato de usar los métodos MyType add() y divide dentro del script scala, aparece el error error: expected start of definition ?

¿Podría ayudarme a identificar el problema?

¡Gracias por adelantado!

secuencia de comandos.js:

 class MyType { constructor(x, y) { this.x = x; this.y = y; } add(z){ let {x,y} = this; return x + y + z; } divide(z){ let {x,y} = this; return (x + y)/z; } }; module.exports = {MyType};

App.scala:

 import scala.scalajs.js import scala.scalajs.js.annotation._ @js.native @JSImport("./script.js","MyType") class MyType(var x:Double, var y:Double) extends js.Object object MyApp { @JSExport def main(args:Array[String]): Unit = { val added = new MyType(1,2).add(3) println(s"my $added") // 1 val divided = new MyType(4,3).divide(2) println(s"my $divided") // 6 } }

build.scala:

 name:="JSImports" version:="0.1" scalaVersion:="2.11.12" enablePlugins(ScalaJSPlugin) jsDependencies += ProvidedJS/"script.js" scalaJSUseMainModuleInitializer:=true
about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

El error de inicio de definición esperado es el resultado de un error de formato: no puede tener una línea vacía entre @JSImport y class MyType .

Lo más probable es que esto se deba a la forma en que Scala finaliza las sentencias/declaraciones en ausencia de punto y coma. No conozco las reglas exactas, pero una línea vacía a menudo marca la diferencia.

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda