2020/01/06
Something I really like from React Native is the global variable __DEV__. Being able to do things only in the development environment is quite handy. This concept is not unique to React Native, but that’s where I was introduced to it.
I’ve found myself in need of a similar strategy while building this static site in Rails. I have some dynamic interactions that I can use to curate content on my own machine, but I don’t want those scripts bloating the static build that is deployed to production.
This can be achived in Rails with webpacker using Webpack’s DefinePlugin!
// config/webpacker/environment.js
const { environment } = require("@rails/webpacker")
const webpack = require("webpack")
environment.plugins.prepend(
"Define",
new webpack.DefinePlugin({
STATIC: process.env.NODE_ENV === "production",
}),
)
module.exports = environment