It replaces specified string literals
yarn add babel-plugin-search-and-replace
npm i babel-plugin-search-and-replace
pnpm add babel-plugin-search-and-replace
Add the following lines in your .babelrc.
{
"plugins": [
[
"search-and-replace",
{
"rules": [
{
"search": "searchedString",
"searchTemplateStrings": true,
"replace": "replacement"
},
{
"search": /myRegex/,
"replace": "replacement"
}
]
}
]
]
}
If the search
key is a string it will search exactly this string.
For example with this config
"rules": [{
"search": "foo",
"replace": "baz",
}]
str1
will be replaced but not str 2
const str1 = "foo"
const str2 = "foo don't match"
If you want str2
to be replaced, use the regex syntax
"rules": [{
"search": /foo/,
"replace": "baz",
}]
For Babel < 7 use [email protected] (does not support template strings)
{
"plugins": [
[
"search-and-replace",
[
{
"search": "searchedString",
"replace": "replacement"
},
{
"search": /myRegex/,
"replace": "replacement"
}
]
]
]
}