1
Ottoをコールバック関数としてパラメータとして渡したjavascript関数を呼び出すにはどうすればよいですか?goとOttoを使ってjavascriptコールバック関数を呼び出す
例のjavascript:
test.testCallback(function(a) { console.log(a) });
例はオットーを使用してコードを行く:
func main() {
motto.AddModule("test", testModuleLoader)
vm := motto.New()
vm.Run("test.js")
}
func testModuleLoader(vm *motto.Motto) (otto.Value, error) {
test, _ := vm.Object(`({})`)
test.Set("testCallback", func(call otto.FunctionCall) otto.Value {
fn := call.Argument(0)
// HOW TO CALL fn("value for a") ?
return fn
})
return vm.ToValue(test)
}