- NodeGoRequire :
object Extends the require capabilities to allow loading of google go script files as JS files.
Kind: global class
Access: public
Author: Sagie Gur-Ari
The GoLoader enables to load google go script files and to load them into the node runtime as JS files.
Returns the gopher js command arguments.
Returns: String - The command arguments
Access: public
| Param | Type | Default | Description |
|---|---|---|---|
| goFile | String |
The google go script file path | |
| [minify] | Boolean |
false |
True to minify the generated code |
Runs the gopherjs converter process.
Returns: Object - The process execution output (see shelljs for more information)
Access: public
| Param | Type | Default | Description |
|---|---|---|---|
| goFile | String |
The google go script file path | |
| gopherjs | String |
The gopherjs executable file location | |
| [minify] | Boolean |
false |
True to minify the generated code |
Converts the provided go file into JS script text.
Returns: String - The JS string of the converted go script
Access: public
| Param | Type | Default | Description |
|---|---|---|---|
| goFile | String |
The google go script file path | |
| [options] | Object |
Optional runtime options | |
| [options.minify] | Boolean |
process.env.NODE_GO_REQUIRE_MINIFY |
True to minify the generated code |
Converts the provided google go file into JS script and loads it into the node runtime.
Returns: Object - The JS module
Access: public
| Param | Type | Default | Description |
|---|---|---|---|
| goFile | String |
The go script file path | |
| goModule | Object |
The module for the go script | |
| [options] | Object |
Optional runtime options | |
| [options.minify] | Boolean |
process.env.NODE_GO_REQUIRE_MINIFY |
True to minify the generated code |
Extends the require capabilities to allow loading of google go script files as JS files.
Kind: global namespace
Author: Sagie Gur-Ari
Example
In order to use google go scripts under node, you need to first require this library as follows
require('node-go-require');Now you can require your google go files like any other javascript files, for example:
const petGo = require('./pet.go');
const pet = petGo.pet.New('my pet');
console.log(pet.Name());
pet.SetName('new name...');
console.log(pet.Name());Go source:
package main
import "github.com/gopherjs/gopherjs/js"
type Pet struct {
name string
}
func New(name string) *js.Object {
return js.MakeWrapper(&Pet{name})
}
func (p *Pet) Name() string {
return p.name
}
func (p *Pet) SetName(name string) {
p.name = name
}
func main() {
js.Module.Get("exports").Set("pet", map[string]interface{}{
"New": New,
})
}NodeGoRequire.goLoader : GoLoader
The GO loader instance.
The node require implementation for google go scripts.
Access: public
| Param | Type | Description |
|---|---|---|
| goModule | Object |
The module for the go script |
| fileName | String |
The go script file name |