TypeError:this.buf.utf8Write不是函数

时间:2017-02-04 13:19:40

标签: scala.js scalajs-bundler

我正在尝试为npm库avsc创建一个外观。当我使用sbt fastOptJS::webpack进行编译并打开.html文件时,我会从js库的that文件中的TypeError: this.buf.utf8Write is not a function行获得this.buf.utf8Write(s, pos, len);。它是从toBuffer函数调用的。

使用外观的代码应该有效:

val schema = """{"type" : "record", "name": "Pet", "fields": [{"name": "name", "type": "string"}]}"""
val petType = avro.parse(schema)
val jsDict = js.Dictionary("name" -> "Tom")
println(petType.isValid(jsDict)) // prints 'true'
val buf = petType.toBuffer(jsDict)

另请查看整个project,它的代码非常少。

1 个答案:

答案 0 :(得分:0)

解决方案:当使用webpack或browserify在客户端使用avsc时,必须使用require('avsc / etc / browser / avsc')。