假设我要生成以下javascript:
var myObj = { x: 'a', y: 'b' }
我可以打电话来js.Dynamic.literal文件:
val myObj = js.Dynamic.literal(x = "a", y = "b")
但我也可以在课堂上展示这类信息:
@js.native object MyObj extends js.Object { val x = "a" val y = "b" } val myObj = MyObj
但自从我升级到6.21之后,这会导致编译器警告:
特征、类和对象的成员扩展任何仅限五月 包含调用js.本地. 这将在1.0中强制执行。 val x=“一” ...
特征、类和对象的成员扩展任何仅限五月 包含调用js.本地. 这将在1.0中强制执行。
val x=“一”
...
我有没有办法继续这种方法?
我试着重做 Scalafiddle .
异常看起来有点不同,但按照建议执行最终解决方案而不发出警告如下:
import scala.scalajs.js.annotation.ScalaJSDefined @ScalaJSDefined object MyObj extends js.Object { val x = "a" val y = "b" } println(MyObj.x + MyObj.y)
这里是 Scalafiddle .