什么是Node的NODE_ENV的Golang等效项

I'm trying to set up templating whereby based on an environment variable to indicate whether we are in a development, staging or production environment, the HTML that is rendered is pointed towards different servers.

To do this I would like to use something like Node does in the NODE_ENV environment variable, and then conditionally set the path based on that in my code.

if(process.env.NODE_ENV === 'development') {
  /* development code */
} else {
  /* production code */
}

Is there a standard for defining an environment in Golang? Does this seem like a logical approach?

Yes, it is a logical approach. In fact it's a somewhat standard practice when deploying servers.

There is no standard in the go world, so do whatever.

Just try to keep it obvious, ie: APP_ENV=dev

There doesn't appear to an equivalent of NODE_ENV in the Go world. You can set an environment variable APP_ENV in your IDE locally (and in production).

env := os.Getenv("APP_ENV")
if env == "production" {
  /* production-version of the code */
} else {
  /* development-version of the code */
}

you can still using "NODE_ENV", it's just a name, then use os.Getenv("NODE_ENV")get it.