【发布时间】:2020-05-07 07:00:53
【问题描述】:
我正在尝试使用 karate.call 来调用接收两个参数(字符串、字符串数组)的 JS 文件的函数。但是字符串数组不会传递给 JS 文件。
JS文件包含:
function(query, fragments) {
// Here lies some code
// One of them includes fragments.length;
}
而我是这样调用另一个JS文件上的JS函数的:
//var query = 'Some string';
//var fragments = ['fragment1', 'fragment2'];
var clean = karate.call('../helper/helper.js', [query, fragments]);
我可以传递字符串形式的查询。但我无法传递字符串数组。错误说:
TypeError: Cannot read property "length" from undefined
似乎字符串数组没有传递给 JS 函数。任何帮助将不胜感激。谢谢!
【问题讨论】:
-
您的
.call()只传递一个参数,即您从query和fragments构建的数组。如果您使用.apply()而不是.call(),那将是有意义的。
标签: karate