是否可以合并两个 js.Dynamic 对象
Is it possible to combine two js.Dynamic objects
说我有
val obj1 = js.Dynamic.literal(attr1 = "x")
val obj2 = js.Dynamic.literal(attr2 = "y")
并且我想将 obj1 和 obj2 组合成
的 yield 和 object
{attr1 = "x", attr2 = "y"}
js.Dynamic是否有产生这种组合的方法?
目前还没有这样做的方法。 ES6中有Object.assign
,IE不支持
我建议在 Scala.js 中重新实现它:
def mergeJSObjects(objs: js.Dynamic*): js.Dynamic = {
val result = js.Dictionary.empty[Any]
for (source <- objs) {
for ((key, value) <- source.asInstanceOf[js.Dictionary[Any]])
result(key) = value
}
result.asInstanceOf[js.Dynamic]
}
现在你可以简单地做
mergeJSObjects(obj1, obj2)
说我有
val obj1 = js.Dynamic.literal(attr1 = "x")
val obj2 = js.Dynamic.literal(attr2 = "y")
并且我想将 obj1 和 obj2 组合成
的 yield 和 object{attr1 = "x", attr2 = "y"}
js.Dynamic是否有产生这种组合的方法?
目前还没有这样做的方法。 ES6中有Object.assign
,IE不支持
我建议在 Scala.js 中重新实现它:
def mergeJSObjects(objs: js.Dynamic*): js.Dynamic = {
val result = js.Dictionary.empty[Any]
for (source <- objs) {
for ((key, value) <- source.asInstanceOf[js.Dictionary[Any]])
result(key) = value
}
result.asInstanceOf[js.Dynamic]
}
现在你可以简单地做
mergeJSObjects(obj1, obj2)