I am using npm as a build tool and so in my package.json
, and some of my scripts depend on other scripts:
{
\"test\": \"npm run lint && mo
The $npm_execpath
environment variable refers to the build tool, so just replace npm
with the $npm_execpath
:
{
"test": "$npm_execpath run lint && mocha"
}
Both npm test
and yarn test
will work, and will use the appropriate build tool.
While mjs' answer is great, there's also a small package that is purported to work on all environments including Windows: https://www.npmjs.com/package/yarpm
To use in a project, run yarn add yarpm --dev
/ npm i -D yarpm
and then just use yarpm in your scripts like this:
{
"test": "yarpm run lint && mocha"
}
As the package README notes, you just need to make sure your commands would be suitable for passing through to either yarn or npm: you cannot use arguments/flags that only work on one package manager.