J'ai un script que j'ai créé dans Google Apps Script qui envoie un message détendu à un utilisateur avec certains ID sur une liste dans une feuille Google avec un lien hypertexte. La liste de chaque utilisateur ne contient pas le même nombre d'ID, ce qui entraîne l'apparition de l'URL du lien hypertexte pour les cellules vides dans le message de relâche. Est-il possible d'ignorer ou de masquer l'URL du lien hypertexte pour les cellules vides pour chaque utilisateur. Toutes mes excuses si ce n'est pas clair. Veuillez voir le script de charge utile ci-dessous:
// custom slack webhook
var url = "https://hooks.slack.com/services/XXXXXSBGW/XXXXXXU1K/XXXXXXXXn9jfZXAAAAAA";
var payload = {
"channel": "@"+city[2],
"username": "Alerts",
"text": "Hi " + city[0] + "\n"+
"\n Here are your most pending kits for review.\n" +
"\n <https://google.com/maps/'"+"|"+city[5]+">" +
"\n <https://google.com/maps/'"+"|"+city[6]+">" +
"\n <https://google.com/maps/'"+"|"+city[7]+">" +
"\n <https://google.com/maps/'"+"|"+city[8]+">" +
"\n <https://google.com/maps/'"+"|"+city[9]+">" +
"\n Please review these kits as soon as possible.\n"
};
Hyperliens génériques fournis, mais les colonnes 7 à 9 de la feuille de calcul Ville sont parfois vides. Est-il possible de sauter ces cellules si elles sont vides ou du moins ne pas faire apparaître l'URL? Lorsque les cellules sont vides, l'URL du lien hypertexte est généralement affichée dans le message Slack. Toute orientation serait très appréciée.
Vous devez vérifier chacune de ces valeurs pour voir si elles sont renseignées et ensuite seulement les ajouter au message. Vous pouvez le faire de plusieurs manières, mais la plus simple est peut-être de parcourir les valeurs, de créer un tableau, puis de rejoindre le tableau.
// Example city array
var city = ["name", 1, 2, 3, 4, "city1", "city2", "", "city3"];
// Compile links
var linkStartIndex = 5;
var linkEndIndex = 9;
var links = [];
for (var i = linkStartIndex; i <= linkEndIndex; i++) {
var value = city[i]
if (value != null && value != "") {
links.push("\n <https://google.com/maps/'"+"|"+value+">");
}
}
// Compile full text
var text = [
"Hi " + city[0] + "\n",
"\n Here are your most pending kits for review.\n",
links.join(""),
"\n Please review these kits as soon as possible.\n"
];
var joined = text.join("");
console.log(joined);
Vous pourriez potentiellement rendre cela un peu plus clair en utilisant map () , mais tout dépend vraiment de la façon dont vos données sont structurées. Personnellement, je n'aime pas avoir un nombre variable de colonnes car elles ne se convertissent pas aussi parfaitement en tableaux que les lignes variables. Je préfère également travailler avec des objets lorsque cela est possible. Considérez comment la génération de cet objet à partir de votre city
tableau peut rendre votre code plus facile à comprendre:
var record = {
name: 'Brian',
slackId: '123',
cities: [
'New York',
'London'
]
};
Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.
En caso de infracción, por favor [email protected] Eliminar
Déjame decir algunas palabras