第一次在StackOverflow上发布,所以对我来说很容易。这是我想要实现的目标:
我有一个从Google表格中获取数据的zap,并将其添加到Javascript文档中的数组中。我使用Zapier代码来创建数组项。我用两种方法来实现这一点,两者都给了我同样的问题。
第一种方式:我将zap数据推送到一个新数组中,以改变使用此代码编写的方式:
/* inputData is the array that zapier puts your data in when using zap code
it looks like this: inputData = {com1: 'company name 1', com2: 'company name 2'}*/
var newArray = [];
var size = Object.keys(inputData).length;
console.log(size);
for (var i = 0; i < size ; i++ ){
if (inputData['com' + i] != null && inputData['com' + i] != ''){
newArray.push('\"' + inputData['com' + i] + '\" ');
}else{
}
}
var output = {company: newArray};
/* the Idea here is to make the new array look like this output = ["company name 1", "company name 2", etc]
第二种方式:只是简单地获取数据并将其输出并在zap的最后一步中使用它。
BOTH工作(语法明智)所以在最终产品中语法是正确的但是一些新的行问题打破了整个事情。
数组的结果:
这就是它在最终产品中的样子,如果我删除了新的线条,那么它可以正常工作。我不知道如何摆脱这些新线路或如何绕过这个问题。
company: {com0: 'company name 1
',com1: 'company name 2 //this is the issue,
',com2: 'company name 4
',com3: 'company name 4
',com4: 'company name 5
'},
所以我想出了答案,似乎来自谷歌工作表的数据增加了一条看不见的新线。并修复问题我使用string.trim()使其工作。
var newArray = [];
var size = Object.keys(inputData).length;
console.log(size);
for (var i = 0; i < size ; i++ ){
if (inputData['com' + i] != null && inputData['com' + i] != ''){
var line = inputData[i];
newArray.push('\"' + line.trim() + '\" ');
}else{
}
}
var output = {company: newArray};
为了清楚起见,这有助于任何使用zapier将数据从GOOGLE SHEET提取到Javascript文档的人。