最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Provide custom parameters ($npm_config_) to npm scripts on Windows - Stack Overflow

programmeradmin5浏览0评论

I have npm scripts in the package.json, I would like to provide custom parameter from the mand line. I found many stackoverflow questions and answers but none of them works. I tried this solution:

  "scripts": {
    "foo": "echo $npm_config_foo && echo done"
  },

When I run the mand:

$ npm run foo --foo=test

> echo $npm_config_foo && echo done

$npm_config_foo
done

As you can see, it does not echo test.

This is my configuration:

- OS: Windows
- Terminal: GitBash
- npm version: 7.14.0

I tried this, on Linux and it works. This is related to Windows.

I have npm scripts in the package.json, I would like to provide custom parameter from the mand line. I found many stackoverflow questions and answers but none of them works. I tried this solution:

  "scripts": {
    "foo": "echo $npm_config_foo && echo done"
  },

When I run the mand:

$ npm run foo --foo=test

> echo $npm_config_foo && echo done

$npm_config_foo
done

As you can see, it does not echo test.

This is my configuration:

- OS: Windows
- Terminal: GitBash
- npm version: 7.14.0

I tried this, on Linux and it works. This is related to Windows.

Share Improve this question edited May 24, 2021 at 21:03 PierBJX asked May 21, 2021 at 13:02 PierBJXPierBJX 2,3735 gold badges25 silver badges58 bronze badges
Add a ment  | 

2 Answers 2

Reset to default 5

The accepted answer is Great but does not work if the Repo is used by both Windows and Linux Users. If so than I remend to use cross-var (https://www.npmjs./package/cross-var)

Just add it into the beginning of the script (after you added it to your dependencies)

"scripts": {
  "foo": "cross-var echo $npm_config_foo && echo done",
},

The solution is to use % instead of $.

  "scripts": {
     "foo": "echo %npm_config_foo% && echo done",
  },
发布评论

评论列表(0)

  1. 暂无评论