babel-plugin-inline-replace-variables
babel plugin to inline replace variables
Last updated 10 years ago by zeroling .
MIT · Repository · Original npm · Tarball · package.json
$ cnpm install babel-plugin-inline-replace-variables 
SYNC missed versions from official npm registry.

babel-plugin-inline-replace-variables

Build Status

It replace an Identifier to a literial (LVal), if you want to transfrom a identifier to another identifier, you can see: babel-plugin-replace-identifiers

Usage

npm i babel-plugin-inline-replace-variables --save-dev

configure in .babelrc(should transfer to json format) or any babel queries:

{
  plugins: [
    ['inline-replace-variables', {
      "__SERVER__": true,
      "__VERSION__": "v1.2.3"
    }]
  ]
}

EFFECT:

if (__SERVER__) {
  console.log('this is server, version: %s', __VERSION__)
} else {
  alert('this is browser')
}

will be transformed to

if (true) {
  console.log('this is server, version: %s', "v1.2.3")
} else {
  alert('this is browser')
}

Support Replace With Expression:

{
  plugins: [
    ['inline-replace-variables', {
      "__TYPE__": {
        type: 'node',
        replacement: 'process.env.NODE_ENV'
      }
    }]
  ]
}

EFFECT

if (__TYPE__) {
  // code
}

to

if (process.env.NODE_ENV) {
  // code
}

Also support babel AST Node

const t = require('babel-types');
const nodeEnv = t.memberExpression(t.memberExpression(t.identifier('process'), t.identifier('env')), t.identifier('NODE_ENV'));

{
  plugins: [
    ['inline-replace-variables', {
      "__TYPE__": nodeEnv
    }]
  ]
}

EFFECT

The effect is the same above.

tip:

Version 1.0.1 fix the misspelling of 'varibles' to 'variables'

so babel-plugin-inline-replace-varibles is deprecated, you should instead it of babel-plugin-inline-replace-variables

Authors: https://github.com/wssgcg1213, https://github.com/rtsao

Current Tags

  • 1.3.1                                ...           latest (9 years ago)

9 Versions

  • 1.3.1                                ...           9 years ago
  • 1.3.0                                ...           9 years ago
  • 1.2.2                                ...           9 years ago
  • 1.2.1                                ...           9 years ago
  • 1.2.0                                ...           9 years ago
  • 1.1.2                                ...           10 years ago
  • 1.1.1                                ...           10 years ago
  • 1.1.0                                ...           10 years ago
  • 1.0.1                                ...           10 years ago
Maintainers (2)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 9
Dependencies (0)
None
Dev Dependencies (7)

Copyright 2013 - present © cnpmjs.org | Home |