我正在寻找通过命令行将参数传递给我的ava测试文件的方法,我找到了这个文档。https://github.com/avajs/ava/blob/main/docs/recipes/passing-arguments-to-your-test-files.md
// test.js const test = require('ava');
test('argv', t => {
t.deepEqual(process.argv.slice(2), ['--hello', 'world']);
});
$ npx ava -- --hello world我想知道这段代码到底在做什么,但我在网上找不到其他相关的话题。有人能跟我解释吗?
发布于 2021-10-21 14:04:00
这段代码只是向您展示了在节点中--因此在ava中,参数在数组process.argv上是可用的。你可以找到有文件记载的这里
slice(2)只对数组的前两个元素进行裁剪。从我上面链接的文档来看,这是因为:
第一个元素是process.execPath。第二个元素是正在执行的JavaScript文件的路径。
所以你的论点从process.argv[2]开始。
t.deepEqual只是向读者展示了process.argv.slice(2)的价值是:
['--hello', 'world']https://stackoverflow.com/questions/69663349
复制相似问题