#javascript-typescript
1 messages · Page 109 of 1
Nope c'est juste pour la prise de commandes donc juste 1 mois ça me convient
Mais je vais utiliser ça du coup merci
Ca marche aussi pour les fichiers ig?
Les fichiers IG ?
Si tu parles des fichiers autres que des images, nope, ça disparait
Ah mince
Ouais les .zip etc quoi
Pourquoi est-ce qu'ils gardent les images mais pas les fichiers 😦
étrange 🤔
J'ai passé une journée à essayer de comprendre comment ça fonctionnait ahah
pfff ils sont chiants
Salut tout le monde, je voulais ajouter la prise en charge du système de modules EcmaScript en plus de CommonJS à une librairie (sheweny) pour NodeJS.
Utilisant typescript je peux définir une sortie sur EsX ou CommonJS. Cependant je peux pas prendre en charge les 2 à la fois bien sur (en une seule compilation). Donc la solution ce serait de faire une version EcmaScript et une version CommonJS de la librairie mais cela signifie doubler son poids alors que normalement il n'y a que une seule ligne qui a réellement besoin d'être changée.
Du coup je voulais savoir si il y aurait pas une autre solution que de faire les 2 versions ?
Je vois mal comment c'est possible comme ça
En gros tu veux pouvoir utiliser export et module.exports en même temps ?
oui
Alors c'est ce que je fais avec mes projets je vais te montrer mon tsconfig
D'ac merci
J'écris commonjs dans la partie module
Et ça supporte les deux
c'est a dire ? dans mon projet j'ai besoin de charger des fichiers dynamiquement donc vu que je suis en TS j'utilises await import("path") mais en cjs ca devient require("path") donc si l'utilisateur est en ESM ca va pas marcher car require existe pas
Regarde du côté de esModuleInterop
Je vais essayer, merci
Meme avec cette option j'ai un Error [ERR_REQUIRE_ESM]: require() ... is not supported
Tu as bien module en commonjs?
Voilà mon tsconfig.json
{
"compilerOptions": {
"resolveJsonModule": true,
"target": "es6",
"module": "commonjs",
"lib": ["es2015", "dom"],
"sourceMap": true,
"outDir": "dist",
"strict": true,
"moduleResolution": "node",
"types": ["node"],
"esModuleInterop": true
}
}
En CJS c'est comme si il exportait pas la variable SyntaxError: The requested module 'sheweny' does not provide an export named 'ShewenyClient'
Avec mon tsconfig.json je peux utiliser import/require et export/module.exports
Mais dans tes modules tu dois exporter des deux manières si tu veux pouvoir l'importer des deux manières aussi
Ah voila, donc je dois faire un truc qui ressemble à ca ?
"exports": {
".": {
"require": "./index.cjs", // CJS
"import": "./index.mjs" // ESM
}
}
(dans le package.json)
Je pensais directement dans tes fichiers ts
c'est a dire exporter de 2 facons ?
export default MonObjet;
module.exports = MonObjet;
Ah oui mais vu que j'en exporte beaucoup ca va etre le bordel dans le code, du coup vaut mieux que je compile 2 fois, une fois pour CJS et une fois pour ESM
Après si c'est une librairie que tu fais tu peux créer un objet qui contient tout ce que tu exportes et l'exporter des deux façons dans ton index.ts
je vais essayer les 2, merci de ton aide
je suis a la recherche d'un personne qui pourrais m'aider a coder un bot avec pas mal de commande sans remunération merci a vous
désoler si il faut pas que j'envoie mon message ici
mrc et j'ai une erreur avec une mes commandes en embed
erreur```(node:29552) DeprecationWarning: Passing strings for MessageEmbed#setAuthor is deprecated. Pass a sole object instead.
(Use node --trace-deprecation ... to show where the warning was created)
C:\Users\Johann\OneDrive\Bureau\Viperr Protect\node_modules\discord.js\src\util\Util.js:416
if (typeof data !== 'string') throw new error(errorMessage);
^
RangeError [EMBED_FIELD_VALUE]: MessageEmbed field values must be non-empty strings.
at Function.verifyString (C:\Users\Johann\OneDrive\Bureau\Viperr Protect\node_modules\discord.js\src\util\Util.js:416:41)
at Function.normalizeField (C:\Users\Johann\OneDrive\Bureau\Viperr Protect\node_modules\discord.js\src\structures\MessageEmbed.js:544:19)
at C:\Users\Johann\OneDrive\Bureau\Viperr Protect\node_modules\discord.js\src\structures\MessageEmbed.js:565:14
at Array.map (<anonymous>)
at Function.normalizeFields (C:\Users\Johann\OneDrive\Bureau\Viperr Protect\node_modules\discord.js\src\structures\MessageEmbed.js:564:8)
at MessageEmbed.addFields (C:\Users\Johann\OneDrive\Bureau\Viperr Protect\node_modules\discord.js\src\structures\MessageEmbed.js:328:42)
at MessageEmbed.addField (C:\Users\Johann\OneDrive\Bureau\Viperr Protect\node_modules\discord.js\src\structures\MessageEmbed.js:319:17)
at Object.execute (C:\Users\Johann\OneDrive\Bureau\Viperr Protect\commands\shop.js:25:6)
at Object.execute (C:\Users\Johann\OneDrive\Bureau\Viperr Protect\events\messageCreate.js:16:21)
at Client.<anonymous> (C:\Users\Johann\OneDrive\Bureau\Viperr Protect\index.js:26:50) {
[Symbol(code)]: 'EMBED_FIELD_VALUE'
}``` code
Tu es à la recherche d'un créateur de contenu ?
D'un super développeur pour te faire le nouveau site de l'année, ou encore d'un graphiste pour réaliser le logo de ton serveur ?
Clique ici et tu trouveras ton bonheur !
Il te suffit simplement de créer ton offre en détaillant précisemment ce que tu recherches 👌
@burnt current
et tu aurais des tuto pour comprendre des les erreur
Le tutoriel c'est la doc
Suffit de lire souvent
Un field ça prend un label et un valeur
Un très bon guide qui explique les embeds : https://discordjs.guide/popular-topics/embeds.html#using-the-embed-constructor
oui
Quelqu'un de doué en VueJs de dispo ?
Explique ton soucis
Je t'ai ping pour le message qu'il y avait en dessus du miens !
Ok je me lance
const pizzas = [
{id : 0, image : "../../pizza/gpas.jpg", nom : "Margarita", prix : 9.00, description : "Mozzarella, persillade, olives", vegetarienne : true, base : "tomate/origan"},
{id : 1, image : "../../pizza/reine.jpg", nom : "Reine", prix : 10.50, description : "Mozzarella, jambon, champignons frais, huile d\'olives, olives", vegetarienne : false, base : "tomate/origan"},
]
const pizza = ref(pizzas[0])
a ok
<div v-for="(item, index) in computedListPizzas" :key="item.nom" :data-index="index">
<a @click="initP(item.id)">
<h6>{{ item.nom }}</h6>
<h6>{{ item.prix }}€</h6>
<span>
<img :src="item.image" alt="" />
</span>
</a>
</div>
function initP(i) {
this.pizza = ref(pizzas[i]);
}
<Teleport to="section">
<modal :pizza="pizza">
</modal>
</Teleport>
L'affichage dans le component modal se fait correctement en mode run dev
cependant quand je le run build et que je preview j'ai une erreur
Quand je fais le click qui lance ma fonction
En mode développeur aucun problème
@ashen rapids Je compte sur toi 🥲 j'en peu plus
Bonsoir à tous
J'ai l'erreur suivante :
Error [ReferenceError]: guildId is not defined
Voici mon code, j'ai beau le tourner dans tous les sens et je n'y arrive pas :
let guildId = "12345678923135"
bot.shard.broadcastEval(c => {
console.log(guildId)
return c.guilds.cache.get(guildId)
}).catch((err) => {
console.log(err)
})
Merci d'avance pour l'aide apportée 😉
Bonjour, est ce que quelqu'un sais comment je peut récupérer le contenue d'une variable php ($nom = select nom from la_table where... ) et la réutiliser en js ? ^^
j'utilise ajax, qui me permet une requete php mais je doit ensuite passer le contenue de ma variable php dans un fichier fullcalendar qui est en js ^^
Tu le mets en résultat de ta requête PHP !
Update j'ai réussi
je passe une variable js en resultat de requete ? let test = requete ?
Tu l'as récupère via le résultat oue
Regarde la réponse de ta requête pour voir ce qu'il faut récupérer exactement !
yep j'ai trouvé merci beaucoup x)
les gars je cherche un peu d'aide
Dis nous tout
Quelqu'un sait pourquoi j'ai ces erreurs ?
La page fonctionne très bien mais j'ai quand même l'erreur
envoie ton code
mais ton erreur dit que ce que tu essaye de référencer ne peut être fait que depuis un tag html
<section class="wrapper style5">
<div class="inner">
<h4 id="fr">Menu Français</h4>
<span class="image fit">
<img src="../../public/menu/page1FlyerFR.png" alt="">
<img src="../../public/menu/page2FlyerFR.png" alt="">
</span>
<h4 id="en">Menu Anglais</h4>
<span class="image fit">
<img src="../../public/menu/page1FlyerEN.png" alt="">
<img src="../../public/menu/page2FlyerEN.png" alt="">
</span>
</div>
</section>
C'est bien un tag html c'est ça qui est bizarre
et hier ça marchait tres bien
<li><RouterLink :to="{name: 'menu'}">Menu</RouterLink></li>
Je pensais que ça venait de la mais le lien même avec une balise a ça fait pareil
essaye de retirer petit à petit les modifications que tu as pu apporter depuis hier et tu verras là où sa coince dans ton code
Ok c'est bon
J'ai juste changer le /menu par /menus pour voir et ça marche c'est qu'il allait chercher un dossier /menu plutot que le lien
J'ai une nouvelle question
Est ce que quelqu'un sait pourquoi lorsque je change de pages ça m'affiche pas en haut de la page ? mais au même niveau que la page d'où je viens
bonjour voila j'ai une erreur quand j'essaye de faire la commande
Client.on("messageCreate", message => {
if (message.author.bot) return;
if(message.content === prefix +"ftg"){
const embed =new Discord.MessageEmbed()
.setColor("#8B0000")
.setTitle("**__Choisis tes roles__**")
.setDescription("Oh ! "+ "<@" +"> viens de scréer unt ticket! :)")
.setURL("https://discord.js.org/")
.addFields(
{name : "Pour close le ticket" , value: "Cliquer sur le bouton ci-dessous pour fermet un ticket", inline: true},
)
.setTimestamp()
.setFooter({text:"By Malzeiy", iconURL:"https://cdn.discordapp.com/attachments/981606149365334047/981629933833031721/tumblr_nyr1o0OR2k1qfwheqo2_1280.png"});
message.channel.send({ embeds: [embed]});
const row=new Discord.MessageActionRow()
.addComponents(
new Discord.MessageSelectMenu()
.setPlaceholder('Choisis tes roles')
.addOptions([
{
label: 'roles1',
value: 'r1',
description :'descrpition r1'
},
{
label: 'roles2',
value: 'r2',
description :'descrpition r3'
}
])
);
message.channel.send({content: " ", components: [row]});
}});
voici l'erreur
le embed s'envoie mais pas le reste c normal
Faut mettre un ID à ton select
Ce guide explique bien comment ça fonctionne : https://discordjs.guide/interactions/select-menus.html#building-and-sending-select-menus
En règle générale, tout ce qui est sur ce guide est relativement bien expliqué
hi
bonjour, est-il possible de bloquer les bots de scraping ? Notamment des extensions chrome qui permettent le scraping de données de nos sites ?
Hello, est-ce que quelqu'un maitrise Sequelize ici ?
J'essai de synchroniser ma db avec mes modèles, donc j'utilise UsersAdminModel.sync();
Mais j'obtiens une erreur : TypeError: Cannot read properties of undefined (reading 'define')
Qui se réfère à : export const UsersAdminModel = db.define('UsersAdmin', {
Je ne comprends pas vraiment la raison de cette erreur
Peut être une erreur d'importation ?
On dirait bien
Bonjour. Si je vous paste du code, quelqu'un pourra me dire où est-ce que j'ai loupé quelque chose ? Car je n'ai aucune réaction du bot lorsque la commande est invoquée
bonjour comment je fait pour mettre de l'espace dans les embed car la c'est tous coller
//
const Discord = require('discord.js');
const { readdirSync } = require('fs');
const Client = new Discord.Client(({intents : [98045]}))
const prefix = '+'
module.exports = {
name: 'shop',
descirption: 'Commande Help',
async execute (message, args, client) {
if (message.author.bot) return;
if(message.content === prefix + "shop"){
const embed = new Discord.MessageEmbed()
.setColor("#2400FF")
.setTitle("Tous les prix du shop")
.setAuthor("Coded By Terror#0999", "https://i.imgur.com/QhpmKwE.gif")
.setDescription("**__Voici les différent prix du shop__**")
.addField("**__Nitro 1 Mois__**", "**2€35 Nitro CL / 4€45 Nitro Boost**")
.addField("**__Nitro 1 Ans__**", "**15€ Nitro CL /30€ Nitro Boost**")
.addField("**__Nitro 3 Mois__**", "**35¢ Nitro Boost**")
.addField("**__Méthode de paiment__**", "**Paypal / Crypto**")
.addField ("**__Merci de créer un ticket__**", "**Ont vous répondra sous les plus préf délais**")
.setImage("https://media.discordapp.net/attachments/977535850747428894/978721115604135956/Viperr.gif")
.setFooter({ text: 'Ce bot a été créer par Terror#0999'})
message.reply({ embeds: [embed]});
}
}}```
met des \n
tu est la pour troll ?
https://pastebin.com/yM1DpzXa Je cherche à comprendre ce qui ne va pas dans le code / ce qui manque pour que la commande fonctionne car aucune réaction du bot
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
c'est ton fichier index?
bah jsp dsl et tu pourrais m'aider pour mettre des \n
😂
Hum ça je ne sais pas, je ne suis qu'un newbie encore
Bah tu fais un addField et tu rajoutes une chaîne de caractère qui contient \n
comme ça ? .addField\n("**__Méthode de paiment__**", "**Paypal / Crypto**")
Chaine de caractères
@keen narwhal .addField\n("**__Méthode de paiment__**", "**Paypal / Crypto**\n")
Bonjour,
Quelqu'un de calé sur l'utilisation de useFetch sur Vue3 ici ?
Je serai pas contre une petite explication du fonctionnement du module, que je ne comprends pas. Je trouve fetch classique tellement plus simple
petit question dans mon status j'ai mis streaming sauf que ça me met joue à... au lieu de steame ...
Yo, je comprends mal ta question
Tu bloques quelque part lors de son utilisation ou tu veux juste un tuto pour l'utiliser ?
Oui, j'ai du mal à comprendre son utilisation.
J'ai beau lire la doc, mais j'ai du mal à la comprendre.
Avec le fetch classique, je pouvais faire mon petit .then .catch et .finally et récupérer les informations retournées par mon API (mon statusCode et mon statusText).
Alors qu'avec useFetch, je n'ai plus la possibilité de faire mes différentes actions (then, catch, finally), et useFetch retourne un objet qui me complique tellement la tâche
Par exemple avec un .then((res) => {
Je pouvais récupérer mon res.statusCode et mon res.statusMessage, super simplement.
L'objet retourné était super clair. Mais avec le useFetch, j'y pige rien. Il me retourne un objet comme ça, et j'ai du mal à comprendre comment l'intégrer et l'utiliser
La logique voudrait que j'utilise Axios, ça me compliquerai tellement moins la vie, mais malheureusement pour le moment j'ai pas le choix.
Je dois comprendre et/ou trouver les arguments pour convaincre mon lead-dev de changer pour passer sous Fetch tout court
Excuse moi du retard. Concretement moi je fais juste ```
const { data } = await useFetch('url')
console.log(data.value)
et j'ai bien ma data 
Oui, mais ça contient quelle data ?
Celle que tu retournes depuis ton API dans le body en JSON ?
Yes, en gros ça log un proxy mais osef tu traite comme si ça affichait juste ta data brute
Et du coup je peux faire data.value[0] et ça me sortira mon objet 0 tu vois par ex
J'avais pas vu ton log en haut, justement ça te log ça car tu fais pas un .value sur le res/data
Essaye avec tu vas voir la différence
La personne se trompe de mot de passes, mon API me retourne un http code forbidden et un statusMessage pour comprendre le soucis.
Je ne retourne pas un 200, avec à l'intérieur un body un JSON qui m'explique le souci
Avec un error.value il me retourne ça
T'es dans le catch là ou dans le then ?
Je suis dans aucun des deux, regarde :
// Je fais appel à l'API
const { data, error } = await useFetch(import.meta.env.VITE_API_URL + '/login', {
method: 'POST',
body: JSON.stringify(loginForm.value),
headers: {
"Content-Type": "application/json; charset=utf-8"
}
})
console.log(error);
Tu peux check dans l'onglet Network dans les devtools et ensuite sur ta requete puis dans l'onglet response qu'est-ce qu'il y a stp ?
Il n'y a rien dans la réponse 🙂
C'est justement le but de la manoeuvre
Les données ne sont pas envoyées dans le body
Alors, attend, je vais tester un truc, juste pour voir
Je ne retourne pas un 200, avec à l'intérieur un body un JSON qui m'explique le souci
J'avais pas vu cette phrase sorry
Oui non. Le seul moyen pour moi de récupérer les données dans un proxy comme toi, c'est effectivement de retourner un JSON avec un httpcode 200
La effectivement, je peux faire mon data.value.message
Oui moi c'est comme ça que je fais pour l'api 👌
Mais à partir du moment où je bascule sur un http code différent de 200, j'arrive pas à récupérer la valeur associé au body
Et la convention veut que les httpcode varient en fonction du résultat, donc je peux pas retourner h24 un 200
Je check ça
C'est pour ça que je trouve cette méthode super bancale par rapport un fetch classique
Tu as un statuscode particulier ou ça deconne de ton cote ?
Tous autre que 200, tu peux tester 400
Essai depuis ton api de retourner un statusCode de 400 et un statusMessage "bonjour", et tu verras que c'est pas si simple de récupérer ça proprement avec useFetch
useFetch('http://localhost:3001/v1/toto').then(({ error }) => {
console.log(error.value.response.status, error.value.response.statusText )
})```
C'est très verbeux mais ca fonctionne 
Et si tu veux gérer en plus de ça les 200 ?
Comment tu arrives à mettre tout ça là dedans sans que ce soit le gros bazard 😋
Tu peux faire un composable que tu reutilise apres, ça t'évitera de réecrire ça plusieurs fois
Et pourquoi deux valeurs dans le console log ?
Parce que là tu gères uniquement les erreurs donc tu fais quoi ? Un then supplémentaire avec les 200 ?
ben là c'est un exemple comme un autre mais oui ou sinon une condition, c'est pour ça qu'un composable est interessant car tu renvoie une promise et tu pourras gerer tes cas en une seule fois en jouant avec le reject/resolve limite
euh je comprend pas sa Je fais donc clic droit sur le dossier ou à l'interieur du dossier, et Ouvrir avec Code :
c'est un tutoriel celui la https://g-ca.fr/tutoriels/tutoriel/creer-un-bot-discord-le-code
merci d'avance
C’est juste pour ouvrir facilement le dossier de ton bot avec Visual Studio Code ^^
ok mrc
^^
mais ya pas sa quand je fais clic droit
Tu as installé vsc ?
oui
c bon
Ensuite tu fais "files" -> "open folder"
j'ai choisi la derniere version
Et tu sélectionne ton dossier ^^
Aucun rapport, c’est juste que le setup de vsc a pas dû créé le menu contextuel ^^
merci 🙂

Désormais, il faut créer le fichier principal du bot, le fichier qui contiendra l'essentiel pour démarrer le bot. Nous l'appellerons ici index.js. Pour créer un nouveau fichier, va dans File et ensuite** New File.** Copie-colle le code ci-dessous dans le fichier
Quoi?
euh vous pouvez maider svp pour sa?
pour?
pour ce tweet a la fin https://g-ca.fr/tutoriels/tutoriel/creer-un-bot-discord-le-code
@modern skiff
ou es tu bloqué exactement?
a la toute fin
Désormais, il faut créer le fichier principal du bot, le fichier qui contiendra l'essentiel pour démarrer le bot. Nous l'appellerons ici index.js. Pour créer un nouveau fichier, va dans File et ensuite New File. Copie-colle le code ci-dessous dans le fichier:
@torn sunBa dans ton fichier index.js, faut mettre le code
du bot?
Oui
en ecrivant du code dans le fichier index.js
Ba look des vidéos ytb/doc etc
ok merci
Dr
Bonjour, Vous avez une video qui explique bien comment recuperer la data d'une api svp
J'ai un tableau de tableau :
const boissons = [
{Sodas : [
{id : 0, nom : "Coca Cola", prix : 1.80, description : "33cL"},
{id : 1, nom : "Ice Tea", prix : 1.80, description : "33cL"},
]},
{Vins : [
{id : 0, nom : "Greg et Juju", prix : 9.90, description : "75cL"},
{id : 1, nom : "Tarani (rosé)", prix : 7.90, description : "75cL"},
]},
{Eaux : [
{id : 0, nom : "Evian", prix : 1.80, description : "33cL"},
{id : 1, nom : "Badoit", prix : 1.80, description : "33cL"},
]},
]
Comment je récupère les noms des différents tableaux de mon tableau dans un v-for
<div class="col-4" v-for="(item, index) in boissons" :key="index">
<h2>{{ index }}</h2>
</div>
index me renvoie les chiffres 0 1 2 et non pas les caractères ... Merci d'avance 🙂
Regarde axios
Item me renvoie tout le tableau
et item.nom n'existe pas
Je voudrais avoir Sodas Vins et Eaux et non pas ce qu'il y a a l'interieur :/
Object.keys(item )
C'est bon du coup j'ai trouvé merci 😉
^^
svp c'est quoi les faute dedans
Client.on("message", message => (
(message.content === prefix + "Test"){
let embed = new DiscordAPIError.RichEmbed ()
.setDescription("test")
.setColor("#010101")
.setTimestamp()
.setTitle("TEST")
.setFooter("TEST BOT")
message.channel.send(embed)
}
)
new DiscordAPIError.RichEmbed () en new Discord.RichEmbed()
message.channel.send(embed) en message.channel.send({embeds: [embed] })
@torn sun
Envoi les erreurs @torn sun
Bonjour, est ce possible de faire un bot discord qui recupere tout les url d'une recherche web ? 😅
Cet a dire ?
bah en gros j'aimerais que mon bot recupere les 500 resultat de ma requete web et me les ecrive si possible dans un csv ou un json xd
Quand tu cherches sur internet tu regarde les 50 pages après ?
C’est possible oui
Tu peux utiliser le scrapping je pense
oui c'est sque je veut faire xd
le serveur de mon entreprise a bug cette nuit et faut recuperer l'entiéreté des sites des clients dessus, et y'en a juste 580 sur se serveur xd
event.preventDefault()
console.log(url)
const url = 'http://localhost:4200/api/user/upload';
const formData = new FormData();
formData.append('file', file);
formData.append('fileName', file.name);
const config = {
headers: {
'content-type': 'multipart/form-data',
},
};
axios.post(url, formData, config).then((response) => {
console.log(response.data);
});
``` voici le code
ou je fais mon appel @lapis onyx
console.log(response) donne quoi ?
statue 200
oui
Donc tu bloques sur quoi à partir de la ?
Bah sur ton back si
c'est a dire que lorsque je devrais appuyer sur upload se devrais me mettre la pdp a jour alors que non
code du back regarde :
Bah normal si tu fais pas la MAJ côté front ça va pas se faire tout seul
Ton front a encore les anciennes données
const fs = require("fs");
const { promisify } = require("util");
const pipeline = promisify(require("stream").pipeline);
const { uploadErrors } = require("../utils/errors.utils");
module.exports.uploadProfil = async (req, res) => {
const fileName = req.body.name + ".jpg";
res.send('ok')
try {
await UserModel.findByIdAndUpdate(
req.body.userId,
{ $set : {picture: "./images/profil/" + fileName}},
{ new: true, upsert: true, setDefaultsOnInsert: true},
(err, docs) => {
if (!err) return res.send(docs);
else return res.status(500).send({ message: err });
}
);
} catch (err) {
return res.status(500).send({ message: err });
}
};
Faut que tu le mettes à jour
d'accord, mais comment du coup c'est sa que je cherche surtout
Enlève ton res.send ok
fait, le try catch est entre /* */ normalement pour que sa fonctionne sinon j'ai une erreur
je sais pas pourquoi il s'affiche pas la les /* */
mais je recois l'image
Bah oui mais tu mets pas à jour ta BD la
a oui je vois se que tu veux dire par la
effectivement
car en faite de base le try catch me sert a sa mais la sa fonctionne pas je suis obliger le mettre en commentaires sinon j'ai une erreur
mais je sais pas pourquoi d'ailleurs
Bah donc corrige ton erreur déjà
Ton front peut pas fonctionner correctement si ton back est mort
je recois sa comme erreur
mais je n'arrive pas a la regler
et dans ma console je recois sa
il ne me donne aucune information
Je vois clairement une information clé moi
laquel ?
"Cannot set headers after they are sent to the client"
je viens de reregarder justement je comprend pas
pourquoi il arrive pas a definir mon image c'est sa je comprends pas
npm install canvas
Ou npm i canvas@stable si ce que wailrone t’as dis ne marche pas
Même si il ne devrait pas y avoir de raisons que ça marche pas x)
Tu peux me donner ton package.json ?
Ok
Et les erreurs c’est quoi @keen narwhal ?
Ah mince
Et npm i canvas
Ça marche ?
pour tout mettre à jour
sait-on jamais
sinon tu supprimes ton node_modules et ton package.lock et tu refais un npm i
puis npm i canvas
Hello tout le monde je cherche une personne motivée et sérieux pour m'aider a finir mon projet (en vocal si possible ). (je suis en fin de formation et je passe mon examen le 13) Il reste quelque petite chose a faire sauf que je n'y arrive pas et j'aimerai que quelqu'un puisse m'aider a avancer et à y voir plus clair.( j'utilise react pour le front et express pour le back) Merci d'avance 🙂
c'est quoi le probleme svp
const Discord = require('discord.js');
const client = new Discord.Client();
const prefix = "/";
client.on("ready", () => {
console.log("Le bot tuto c'est bien allumé !")
});
client.login("c mon token")
Envoi l'erreur ?
Ba si il est pas connecter, connecte le 🤔
Hello, j'ai une petite quetsion concernant les selectMenu en discord.js, si quelqu'un aurait l'amabilité d'y répondre,
Je cherche à, lorsqu'une personne clique sur une option, cela lui donne un rôle ( réussi jusque maintenant ) mais qu'après cela, ça le remette à l'écran où aucune sélection n'a été faite
Exemple avec GCA, dans #hub-developpement
lorsque l'on clique sur une option, cela revient par défaut à l'écarn de non-sélection
donc si quelqu'un a une petite idée ^^
Salut, il te suffit d’éditer le message
En faisant ça par exemple :
<Interaction>.message.edit({ content: <Interaction>.message.content, embeds: <Interaction>.message.embeds, components: <Interaction>.message.components })
(Je suis pas trop sur de moi sur l’embed et les components, mais dis toi juste que ça devrait ressembler à ça ^^
J’ai fini par réussir par moi meme hier, mais merci tout de meme !
Bonjour a tous ,je commence le JS, et ma question c'est comment mettre en LIVE depuis VSC a Chrome pour voir ce que je code, avec la console.
Merci d'avance.
Salut, je comprends pas tout à fait ce que tu veux faire. Tu pourrais développer ?
J'aimerais mettre mon codage visible sur Chrome. Le mode "go live" su VSC.
Dans le tuto de from scratch sur youtube il montre comment faire, mais ça ne fonctionne pas pour moi.
Je vais essayer de prendre une photo pour que ce soit plus clair
Il veut mettre en place le serveur web avec le hot reload de vcs
aahhh
ok x)
j'avais pas compris
Je suis novice alors je comprend que mes explications soit pas au top
et honnêtement, je sais pas j'utilise plus VSC depuis 6 mois x)
Salut les copains je suis avec discord js et j'aimerais afficher l'avatar de l'user dans un embed, donc j'ai fais interaction.member.avatarURL() mais le problème c'est que si l'user à pas de pdp ça va renvoyer une erreur donc je ne sais pas comment faire pour que ça envoie l'avatar par defaut si l'uyser n'a pas d'avatar D :
moi j'ai mis member.user.displayAvatarURL({ dynamic: true, size: 512 }) et sa a tj marcher
ça mettait la pdp personnalisé si l'user en avait une ?
oui
Nan
je pense pas que DiscordJS prenne encore en charge les pdp personnlisées
Parce que avec ce que Joris t'a donné, tu vas récupérer l'avatar de l'utilisateur (depuis la class User) et non celle du membre
ouais justement je me disais
Hello j'ai une petit soucis cotés front : J'ai une erreur dans ma console qui est :
Uncaught Error: [Home] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>
et j'aimerai savoir comment je pourrais la régler ? Code :
https://paste.artemix.org/-/v-sXfD
Essaie de remplacer <Route path="/route">{component}</Route> par <Route path"/route" element={component} /> et si ça marche pas je comprends pas
Bonsoir ou bonjour s depand qui peux m'aider pour vsc comme sa mon bot est en ligne avec un profil perso
Hello tout le monde je ne comprends pas pourquoi j'ai une erreur lorsque j'appuie sur mon bouton delete pouvez vous m'aider ?
Je recois l'erreur suivante comme reponse : Vous pouvez supprimer que votre propre post; alors que c'est un post que j'ai crée avec le même compte
Code front button : https://paste.artemix.org/-/v8cJjg
Code back :
router.delete("/:id", async (req, res) => {
try {
const post = await Post.findById(req.params.id);
if (post.userId === req.body.userId) {
await post.deleteOne();
res.status(200).json("the post has been deleted");
} else {
res.status(403).json("you can delete only your post");
}
} catch (err) {
res.status(500).json(err);
}
});
Bah tu passes pas ta condition sur les userId
c'est a dire ? tu peux m'expliquer ( si sa te derange pas ^^ )
bah lorsque tu fais ta requête
Tu dois envoyer dans le body ton userId
Donc ton if (post.userId == req.body.userId) ne passe pas pour le moment
justement je l'ai fais mais sa ne fonctionne toujours pas
j'ai fais comme sa
axios.delete('http://localhost:4200/api/posts/'+ post._id, { params: { userId: post.userId, }})
Salut, vous avez une idée pour reduire la taille de la fonction ? ```js
function checkDays(data) {
const date = new Date()
const day = date.getDay() // lundi
// number to day string
const dayString = ['dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi']
// get all days from data
const Lundi = data.lundi
const Mardi = data.mardi
const Mercredi = data.mercredi
const Jeudi = data.jeudi
const Vendredi = data.vendredi
const Samedi = data.samedi
const Dimanche = data.dimanche
// check if day == dayString[day]
if (dayString[day] === 'dimanche' && Dimanche) {
return true
}
if (dayString[day] === 'lundi' && Lundi) {
return true
}
if (dayString[day] === 'mardi' && Mardi) {
return true
}
if (dayString[day] === 'mercredi' && Mercredi) {
return true
}
if (dayString[day] === 'jeudi' && Jeudi) {
return true
}
if (dayString[day] === 'vendredi' && Vendredi) {
return true
}
if (dayString[day] === 'samedi' && Samedi) {
return true
}
return false
}```
Utiliser la déstructuration
function checkDays(data) {
const date = new Date()
const day = date.getDay() // lundi
// number to day string
const dayString = ['dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi']
// get all days from data
const Days = {
"lundi": data.lundi,
"mardi": data.mardi,
"mercredi": data.mercredi,
"jeudi": data.jeudi,
"vendredi": data.vendredi,
"samedi": data.samedi,
"dimanche": data.dimanche
}
// check if day == dayString[day]
if (Days[dayString[day]])
return true
return false
}```
J'ai pas test mais un truc du genre devrait marcher
Merci
ou sinon tu peux directement faire ça : ```js
function checkDays(data) {
const date = new Date()
const day = date.getDay()
const dayString = ['dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi']
return dayString[day] && data[dayString[day]]
}
Ouai voila
mdrrr
function checkDays(data) {
const date = new Date()
const day = date.getDay() // lundi
const Days = [
data.dimanche,
data.lundi,
data.mardi,
data.mercredi,
data.jeudi,
data.vendredi,
data.samedi
]
// check if day == dayString[day]
if (Days[day])
return true
return false
}```
ça fait quoi les !! jcomprends jamais
c'est pour retourner un boolean
un seul ! ça retourne false si c'est undefined ou null et deux ! ça retourne true si c'est pas undefined ou null
tu inverses l'inversion quoi
euh Eno
Mais ducoup
tu mets juste dayString[day] dans ce cas non ?
oui
return dayString[day] && data[dayString[day]]
ça return true si les deux sont differents de null / undefined
ou false
🤷♂️
Salut , vous savez comment passer des variables additionnel lors de l'enregistrement d'events ?
psk quand j'en register ca prend la valeur actuel de la variable et non celle lors de l'enregistrement de l'event
https://pastebin.com/JLZEUwLB
danw la function download , je suis obligé de recuperer les index dans le json par le nom des fichiers (l'id) (modifié)
et j'essaye de passer la variable dl_token dans les event ndl.on("progress") et "end"
pour update le json
mais quand la lib ne donne pas le nom du fichier je suis niquer
car je peux pas extraire l'id
mais quand la lib ne donne pas le nom du fichier je suis niquer
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
ok j'viens de comprendre @red torrent
Genre si tu veux par exemple console.log(data.lundi)
Si tu met juste data.lundi ça va écrire par exemple "lundi" alors qu'avec !! ça mettra true si il est défini
sympa
c'est ça
Bahahah après 4 ans de js j'viens de découvrir en cherchant pour les "!!" le "??"
J'vais enfin arrêter de faire let variable = var ? var : "Jsp quoi"
?? existe en js?
ah oui je connaissais en php mais pas en js
Yo tout le monde j'ai un problème avec mon bouton supprimer je doit récuperer le userId pour confirmer qu'il sagit de la personne qui a crée le post mais sa ne fonctionne pas :
Front :
const deletePost = () => {
axios.delete('http://localhost:4200/api/posts/'+ post._id, { params: {
userId: post.userId,
}})
.then(response => response.status)
.catch(err => console.warn(err));
}
Back :
router.delete("/:id", async (req, res) => {
try {
const post = await Post.findById(req.params.id);
console.log("test")
console.log(post.userId, req.body.userId)
if (post.userId === req.body.userId) {
await post.deleteOne();
res.status(200).json("the post has been deleted");
} else if (!req.body.userId) {
res.status(409).json("user missing")
} else {
res.status(403).json("you can delete only your post");
}
} catch (err) {
res.status(500).json(err);
}
});
router.delete("/:id", async (params, req, res) => {
const data = req.body()
try {
const post = await Post.findById(params.id);
console.log("test")
console.log(post.userId, data.userId)
if (post.userId === data.userId) {
await post.deleteOne();
res.status(200).json("the post has been deleted");
} else if (!req.body.userId) {
res.status(409).json("user missing")
} else {
res.status(403).json("you can delete only your post");
}
} catch (err) {
res.status(500).json(err);
}
});```
front : js onst deletePost = () => { axios.delete('http://localhost:4200/api/posts/'+ post._id, { userId: post.userId, }) .then(response => response.status) .catch(err => console.warn(err)); }
vous pouvez me donner une commande pour allumer mon bot et mettre un statut personalisée svp
parceque la mienne marche pas
jsp pk ya 0fautes
quo?
ta une erreur sur ta commande ? qui marche pas
oui att jouvre vsc et je te lenvoi
const Discord = require('discord.js');
const client = new Discord.Client();
const prefix = "/";
client.on("ready", () => {
console.log("Le bot test c'est bien allumé !")
});
client.login("mon token bot")
Euuhhhh elle est ou la commandes pour start ton bot ? 🥲
c sa
const Discord = require('discord.js');
const client = new Discord.Client();
const prefix = "/";
client.on("ready", () => {
console.log("Le bot test c'est bien allumé !")
});
client.login("mon token bot")
:/
oe mais ta pas de commandes la dedans 🥲
la c'est juste ton index t'a aucune commande(s)
euh javascript pardon
Bah oui
C'est quoi l'erreur
@floral bolt Hello il me dise que req.body is not a function
sur le back :
router.delete("/:id", async (params, req, res) => {
const data = req.body()
try {
const post = await Post.findById(params.id);
console.log("test")
console.log(post.userId, data.userId)
if (post.userId === data.userId) {
await post.deleteOne();
res.status(200).json("the post has been deleted");
} else if (!req.body.userId) {
res.status(409).json("user missing")
} else {
res.status(403).json("you can delete only your post");
}
} catch (err) {
res.status(500).json(err);
}
});
enleve les parenthèse alors
Alors maintenant j'ai une autre erreur : res.status(500).json(err);
TypeError: res.status is not a function
returndevant t'es reponses
donc devant par exemple res.status(500) ou encore res.status(403) ?
il me dise toujours la même chose :
router.delete("/:id", async (params, req, res) => {
const data = req.body
try {
const post = await Post.findById(params.id);
console.log("test")
console.log(post.userId, data.userId)
if (post.userId === data.userId) {
await post.deleteOne();
return res.status(200).json("the post has been deleted");
} else if (!req.body.userId) {
return res.status(409).json("user missing")
} else {
return res.status(403).json("you can delete only your post");
}
} catch (err) {
return res.status(500).json(err);
}
});
C'est console.log(Logged in as ${client.user.tag}!") @peak cedar
@floral bolt yes j'ai toujours la même erreur
c'est un console.log en soit ca ne te sers pas beaucoup
tu utilises quoi pour ton back ?
c'est un truc d'internet j'ai un prob mon discord ne veux pas que j'envoie de fichier
depuis mon tel
J'utilise express
ok
ah du coup remet le params comme avant : req.params
sa marche pas meme si je lau retirer
bah oui ca ne change en rien ton code c'est normal, mais tu as regarder des tutos pour savoir comment faire un bot ?
en vrai je sais pas pourquoi ca te parque ca
je le met ou le req.params ?
router.delete("/:id", async ( req, res) => {
const data = req.body
try {
const post = await Post.findById(req.params.id);
console.log("test")
console.log(post.userId, data.userId)
if (post.userId === data.userId) {
await post.deleteOne();
return res.status(200).json("the post has been deleted");
} else if (!req.body.userId) {
return res.status(409).json("user missing")
} else {
return res.status(403).json("you can delete only your post");
}
} catch (err) {
return res.status(500).json(err);
}
});```
voila
Eh maintenant je reviens a mon point de base :
il me dit user missing alors que le user et bien dans le body :
const deletePost = () => {
axios.delete('http://localhost:4200/api/posts/'+ post._id, {
userId: post.userId,
})
.then(response => response.status)
.catch(err => console.warn(err));
}
oui
prdn je joue a paladiul
Paladium*
ca te print un truc coté serveur ?
test
62a4a4f4354b753b1c44d2b2 undefined (console.log(post.userId, data.userId)
::1 - - [12/Jun/2022:18:21:32 +0000] "DELETE /api/posts/62a50432a584ce1d042b5b9d HTTP/1.1" 409 14
C'est tout
le console log c'est moi qui est ajouter
pour que tu comprenne se que sais
Je ne suis pas sûr mais il me semble que les requêtes qui utilisent la méthode delete ne prennent pas de body
bonsoir
j'ai une fonction ici et j'aimerais qu'elle ne s'active pas si on regarde la page web sur un téléphone. vs pouvez m'aider svp
bonsoir
j'ai un petit probleme au niveau de mon api
voila l'erreur
et voila le code si quelqu'un peut m'aider
Ton require de ton fichier te retourne un objet
Le .use veut une fonction comme argument, fonction qui sera exécutée dès que la route sera utilisée
Suffit de lire l’erreur pour comprendre ça
J’en déduis donc que tu dois mettre la fonction que tu as fait dans ton fichier, imaginons qu’elle s’appelle « execute » et que tu l’as ajouté à ton module.exports, tu devras utiliser SerialRoutes.exécute comme argument
Déjà si tu n'a pas besoin de modifier ta variable utilise const et si t'a besoin de la modifier utilise let , var c'est ancien
Et faut préciser c'est quoi le soucis

new Typed et pas new typed, la majuscule est nécessaire
Et tu devrais passer plutôt par un id d'ailleurs
app.use c'est pas pour définir des routes
Qqn pourrait me dire comment faire en sorte que cette fonction ne s'active pas si on ouvre la page web sur téléphone ?
J'ai trouvé ça comme fonction pour check, tu peux l'utiliser dans ta fonction dans une condition :
function isMobile() { return ('ontouchstart' in document.documentElement); }
Hello tout le monde quelqu'un saurais comment on fait un role admin ? Par exemple l'admin peux supprimer les post qu'il veux, les modifiers etc et le user peut simplement supprimer que c'est post et modifier que c'est post. Merci d'avance
function isMobile() { return ('ontouchstart' in document.documentElement); }
function zoom() {
if (!isMobile()) return;
// le reste de ta fonction
}
Donne pas trop de contexte, on risquerait de pouvoir t'aider :p
Sorry pardon
^^
Alors :
En faite je réalise un réseau social d'entreprise donc avec des utilisateurs et j'aimerai faire un role admin sauf que je ne sais même pas par ou commencer donc par exemple l'admin pourrais supprimer les post de tout les utilisateurs ou les modifiers sans problème.
Alors que lui l'utilisateur peut seulement supprimer c'est post et seulement et uniquement modifier c'est post
@past nimbus C'est mieux comme sa ? ^^
T'as déjà fais quoi ?
Concernant le projet
Le projet et comme fini je pourrais dire il me reste qu'a faire le role admin
Bah de la même manière que tu testes si un utilisateur à le droit de supprimer un post qui lui appartient, tu testes si il est admin
Ah je vois peut être se que tu veux dire car dans ma base j'ai un isAdmin : False
C'est une solution oui
Donc je commence par ou et par quoi ?
Pourquoi pas Kappa ( un peux d'humour )
Merci
Bah j’ai beau faire ça , ça ne fonctionne pas …
Ça affiche toujours la même erreur dans ta console ?
C’est le projet « coder son CV »
🌱 Tu veux tout savoir sur Javascript : https://youtu.be/9OJLxDxyNg4
- Fichier de base du projet → https://github.com/JustFS/support-projet-4/archive/master.zip
✅ Tu souhaites devenir développeur Front-end : https://fromscratch.podia.com/
✅ Pour échanger avec une communauté de passionnés, r...
qqn sait faire un compteur de passage sur le site mais que si c'est le même ID ça compte comme un seul passage ?
@timid loom
ah bah il peut pas charger le fichier de typed vérifie que t'as mis la bonne adresse
Bonsoir, quelqu'un serait me dire pourquoi ma prog bar ne se lance pas quand je le fais en js ( en css elle marche très bien ) ? 🙂
$('.prog').css('animation', 'loading 15s forwards cubic-bezier(0,0,0,0)')```
Bonjour/Bonsoir euh je n'arrive pas a faire allumer mon bot et les tutos marche pas :/ si que'lqun peux maider
@torn sun envoie ton code
ok
`const Discord = require("discord.js");
const bot = new Discord.Client();
const token = require("token.json");
bot.login(token.token);
`
et le desieme
{ "token": "c mon token" }
@midnight berry
qqn saurait comment faire pour que cette ligne de code ne s'active pas si on ouvre le site sur téléphone ?
Wtf j'ai une erreur avec Sheweny en voulant déclarer une nouvelle slash-command
Woops... An uncaughtException error occured :
DiscordAPIError: Missing Access
at RequestHandler.execute (/home/container/node_modules/discord.js/src/rest/RequestHandler.js:350:13)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async RequestHandler.push (/home/container/node_modules/discord.js/src/rest/RequestHandler.js:51:14)
at async ApplicationCommandManager.set (/home/container/node_modules/discord.js/src/managers/ApplicationCommandManager.js:146:18)
at async CommandsManager.registerApplicationCommands (/home/container/node_modules/sheweny/build/managers/CommandsManager.js:90:19) {
method: 'put',
path: '/applications/915970360623636490/guilds/915959075584503868/commands',
code: 50001,
httpStatus: 403,
requestData: {
json: [
[Object], [Object], [Object],
[Object], [Object], [Object],
[Object], [Object], [Object],
[Object], [Object], [Object],
[Object], [Object], [Object],
[Object], [Object], [Object]
],
files: []
}
}
C'est normal ?
J'ai absolument rien changé au bot et ça marchait très bien avant
Nouvelle maj ? 🥱
moi j'ai le meme probleme mais pour connecter mon bot en gros pour quil est en ligne
nn il ya ecris que il yen a 0
tkt moi aussi
Déjà si ton bot utilise la v13 tu es censé préciser les intents
moi ?
oki
@torn sun ton bot ne se connecte pas mais tu n'as pas d'erreur ?
oui
Qu'est-ce qui te dit qu'il ne se connecte pas dans ce cas ?
bah dans mon server il est hors ligne
Montre nous ton fichier package.json
o
k
{ "name": "tutorial_bot", "version": "1.0.0", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [], "author": "", "license": "ISC", "dependencies": { "discord.js": "^13.8.0" }, "devDependencies": {}, "description": "" }
new Client({ intents : ["GUILDS", "GUILD_MESSAGES"] })
Fait ça quand tu créé ton client
Bon c'est décidé je vais me faire foutre c'est quoi cette m*rde j'en peux plus de discord
quoi?
ça te met ce message à quel moment
Quand je lance le bot
Et que les commandes sont censées être register
Je pense que ton bot est juste ban
Et il marche très bien depuis belles lurettes
J'ai juste voulu rajouter une commande
Et elle veut pas se register correctement
T'as peut être fait une connerie qui a spam API et bam
Non je spam pas l'API
Ils sont chiants Discord sur ça
C'est juste qu'ils ont tout changé dans leur système de merde
Maintenant tu dois gérer les permissions manuellement dans les parametres du serveur askip
Ca pue vraiment le gros caca
Ils me font sincèrement chier discord
En tout cas dans ton bot l'erreur ça vient du fait que tu ne lui a pas accordé la perm de créer des slashs commands
ouaip
mais alors ils ont rajouté ça
c'est un scope
j'ai pas envie de redirect URL bordel c'est fou qu'ils me fassent chier avec ça
ducoup pour mon bot?
Je t'ai donné une soluce
.
Ici
D'après toi
au millieu
Regarde ton code
ok
Tu vas vite comprendre
@lone flax kick ton bot et add le avec ce lien en remplaçant ton ID et normalement y'a aucun problème
T'as pas besoin d'autre chose que le scope applications.commands
https://discord.com/api/oauth2/authorize?client_id=IDBOT&permissions=8&scope=applications.commands bot
En tout cas j'avais déjà eu cette erreur et de faire ça avait réglé mon problème
C'était au début quand les slashs commands avaient été add
moi?
Je parle à Max
ah la3choum
quand ligne 2 tu fais const bot = new Discord.Client();
Remplace simplement par const bot = new Discord.Client({ intents : ["GUILDS", "GUILD_MESSAGES"] })
La ligne 2 oui, tu rajoutes des paramètres au client
il n'y a pas besoin de kick le bot pour changer le scope
refaire l'invitation est suffisant
Pas tout le temps
Moi ça n'a pas fonctionné la dernière fois j'ai été obligé de le kick et de le remettre
Bonsoir j'aurais quelques petite question, car
Lorsque je veux mettre une role grace à l'id de la personne,
Member me renvoie undefined
Voilà en espérant recevoir de l'aide
Le membre n'est pas dans le cache
ah, comment je fais alors ?
:method: GuildMemberManager#fetch()
Fetches member(s) from Discord, even if they're offline.
@signal marsh
Salut tout le monde, j'ai un soucis en JavaScript, j'ai fait un backend et je l'ai déployé sur heroku, quand je teste sur Postman ça fonctionne bien mais quand je teste sur une simple page html ça ne fonctionne pas j'ai "error TypeError: Failed to fetch", j'ai l'impression que c'est un problème de cors
call api
function register() {
const myHeaders = new Headers();
myHeaders.append("Access-Control-Allow-Origin", "*");
myHeaders.append("Content-Type", "application/json; charset=UTF-8");
const raw = JSON.stringify({
name: form.name.value,
email: form.email.value,
password: form.password.value,
confirmPassword: form.password.value,
acceptTerms: true,
});
const requestOptions = {
method: "POST",
body: raw,
headers: myHeaders,
};
console.log(raw);
fetch("https://back-end-hiro.herokuapp.com/accounts/register", requestOptions)
.then((response) => response.json())
.then((result) => console.log(result))
.catch((error) => console.log("error", error));
}
et côté back-end j'ai ajouté
app.use(cors({ origin: (origin, callback) => callback(null, true), credentials: true }));
Tu peux installer cors, en utilisant juste : app.use(cors())
C'est ce qu'il a fait ^^
C'est bon c'est réglé ! Merci quand même
Bonjour c'est pas pour la premiere fois que je demande mais sa marcher pas. comment on fait pour que notre bot il est en ligne svp
Tu run le code..?
Quoi quoi ?
bah commenca run le code
. . .
bon courage pour lui expliquer moi j'ai deja abandonné...
ta bien un index.js ?
montre ton code sans montrer ton token
et bien... reco toi.
const Discord = require("discord.js");
const bot = new Discord.Client();
const token = require("token.json");
bot.login(token.token);
etle deuxieme
{
"token": "c mon tokenn"
}
le deuxiemme fichier ce nome bien token.json ?
oui
tu a une erreur au demarage du bot ?
oui il est pas en ligne
montre l'erreur
@torn suntu vois dans le dossier ou il y a ton index.js, normalement tu as package.json, est ce que tu peut nous montrer le contenu s'il te plait ?
ok
{ "name": "tutorial_bot", "version": "1.0.0", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [], "author": "", "license": "ISC", "dependencies": { "discord.js": "^13.8.0" }, "devDependencies": {}, "description": "" }
ok donc la déjà ton code a un probleme car tu es entrain de coder ton bot comme a la version 12 de discordjs alors que la tu es en v13
ok
donc en gros ici pour ce code tu as suivi un tuto qui explique comment faire un bot en v12 alors que tu es en v13
je m'occupe de te traduire ta base de code a la v13 att ^^
ducoup acoter de "discord.js": "^12.0.0
nan sa fonctionne pas comme sa
ah
il faut que tu apprend avec discordjs v13
mais je connis ps
apprend.
on peut pas connaitre sans apprendre
javoue
si t'essaye de faire sans apprendre tu ira pas loin
donc commence par apprendre et ensuite si tu as des complications tu pourras venir demander de l'aide 🙂
ok mrc
tien essyae cela
const { Client} = require("discord.js");
const config = require('./token.json');
const client = new Client({
intents: ["GUILDS", "GUILD_MESSAGES"]
});
client.on("ready", () =>{
console.log("je suis en ligne");
})
client.login(token.token);
``` Je ne suis pas un pro de la V13 mdrr ^^
mais normalement c'est comme cela qu'elle fonctionne x)
bah alors sa risque pas de fonctionner mdrr
°_°
commence par apprendre le javascript finalement... et apres apprend la lib de discordjs
ok
ctrl maj d puis executer
par ce que ca va etre dur de faire un bot en js sans connaitre le js
oe
ta essayer d'executer le code la ou pas ?
euh c quoi qui marchepas svp
const { Client } = require('discord.js');
const dotenv = require('dotenv');
dotenv.config();
const client = new Client({ intents: 1 });
client.once('ready', () => {
console.log('Je suis prêt !');
});
client.login(process.env.DISCORD_TOKEN);
salut bg tu veux pas regarder un tutos sur internet qui t'apprend la base comment ça marche etc.. je pense que ça t'aidera fortement ^^
pour comprendre un peu :
https://www.youtube.com/c/WornOffKeys
Want to make your own Discord bots? This is the channel for you! I have dozens of Discord.JS tutorials to help you improve your bot.
Hey! My name is Alexzander Flores and I'm a self-taught software developer. I started programming in 2008 and since then it has been a major part of my life.
I started this channel so I could help others learn so...
bonsoir
je suis entrain de crée une api pour mon app solid js qui permet de s'inscrire
et j'ai cette erreur que je n'arrive pas a résoudre
voila le code
et voila le model
et voila l'erreur
Du nosql pour stocker des users 😦
Bonsoir, j'ai une question: Comment puis-je set & get par ex k1 ?
Pour info j'utilise mysql
Merci pour votre réponse
En convertissant ton json en objet, en modifiant ton objet puis en réenregistrant ton objet en json
const model_signup = model('SignUp', SignUp)
const newUser = new model_signup(req.body)
Aaah mais att j'avais pas vu
Tu le fais déjà dans le model
Fait un module export au pire de juste du schéma et tu fais le model à l'endroit où tu require ton schéma
Juste pour voir si ça débug ou pas
Hello ! 🙂
J'ai besoin d'être éclairé sur un point ! 🙂
Est-ce que vous savez si il est possible de splice dans un array sans réorganiser les items
Merci de votre réponse, mais comment fais-je ?
Salut j'utilise l'API https://rapidapi.com/wirefreethought/api/geodb-cities/ , le Get Cities Near Location, le soucis c'est que je n'arrive pas à mettre ma longitude et latitude en ISO 6709 et je ne trouve rien sur internet, ce que j'ai essayé de faire :
const lat_ = String('±'.concat(lat))
const lon_ = String('±'.concat(lon))
const isoformat = String(lat_.concat(lon_))
J'ai trouvé ça mais je ne sais pas du tout comment l'utiliser https://github.com/sualeh/pointlocation6709-js/blob/master/src/main/javascript/pointlocation6709.js
J'ai ENFIN trouvé
Ouais j'ai un exercice de faire une appli mobile météo 😭
Salut,
Je suis entrain de faire un bot en js qui est relier à une basse de donnée, je n'ai pas de problème avec la bdd mais avec le fait d'attribuer un rôle à un utilisateur (dans un events).
code :
erreur :
Merci d'avance de votre aide.
Oui ça devrait être possible
Mais je sais pas comment
J'ai jusqu'à mardi j'ai déjà presque tout terminé x)
Je fais ça avec React native, axios, react native paper etc
message.guild.members.cache.get pas catch
merci c'est bon
Bonjour ! Donc en gros, je suis censé envoyer un message et là, le bot devra répondre un message et enregistrer le serveur dans une bdd sauf que lorsque que j'envoie un message, le bot crash et envoie cette erreur
ici le code concerné
A ta ligne 10 remplace par if (req && req.length < 1) { pour d'abord vérifier que req existe
Le bot ne crash plus mais maintenant j'ai ça :
Fais un log de req pour voir ce que tu recois
"undefined"
Donc req ne renvoie rien
Le problème vien de ta requête sql, elle est mal faite à un endroit, c'est facilement trouvable
Ligne 8
j'y connais pas grand chose mdrr, tu sais où ?
Yes
Hello !
J'aimerais faire comme sur ce site web :
https://sureshmurali.github.io/
L'animation du titre en arriere plan au scroll.
Etant débutant en JS et ayant cherché plus de 2 heures sur ce probleme, je ne trouve aucun moyen de le faire et demande votre aide :D
Merci d'avance :D
(re)Bonsoir ! Ce message d'erreur : "Uncaught Error Error: ER_EMPTY_QUERY: Query was empty" signifie quoi ? 😅
ici le même code
Google traduction

Bonjour les amis c'est Roro
J'aurais besoin d'aide je veux faire un truc propre et faire en sorte que qqn ne puisse pas ouvir un ticket deux fois ou plus, du coup j'ai fais ça
if(interaction.guild.channels.cache.find(c => c.name === `${interaction.user.username}`) === true) {
interaction.channl.send("Non")
} else {
interaction.guild.channels.create(`${interaction.user.username}`, {
parent: `986875337021481020`,
permissionsOverwrites: [
{
id: interaction.guild.id,
deny: [Permissions.FLAGS.VIEW_CHANNEL]
}, {
id: interaction.user,
allow: [Permissions.FLAGS.VIEW_CHANNEL, Permissions.FLAGS.SEND_MESSAGES]
}
]
})
}
mais bon
Et si il change de pseudo..?
Salut je recherche des librairies Javascript qui permettent de réaliser ce genre de cartographie, svp
salut tu appel quoi par cartographie ?
En gros j'ai ma structure, serveurs, domaine, etc. J'aimerais afficher un schéma(arbre) en prenant en paramètre mes relations
Hello tout le monde, j'ai un petit problème en faite lorsque je modifie l'un de mes posts avec le compte admin il modifie tout le post ( nom, message etc ) Sauf que moi je veux qu'il change que le message et pas le nom de l'utilisateur
const [userDesc, setUserDesc] = useState()
const modifPost = () => {
axios.put('http://localhost:4200/api/posts/' + post._id, {
userId: currentUser.user._id,
desc: userDesc,
isAdmin: currentUser.user.isAdmin
})
.then(response => response.status)
.catch(err => console.warn(err));
console.log(currentUser._id)
window.location.reload()
}
Donc c’est ton back que tu dois nous montrer, pas ton front
ça m’explique pas l’erreur mdr
Je suis pas un pro de JavaScript mais en gros tu ne reçois rien dans ta requête
oui ça j'ai cru comprendre, mais du coup je règle ça comment ?
Je sais pas trop, essai de debug en regardant ce que tu as dans ta requete au fur et à mesure
j'ai tout ça là x(
Je te pose ça la
Il me semble que ta requête insert a un problème non à cause du ```ˋ ?
j’ai déjà regardé
à cause du \ ?
non à cause des `
Ce ne sont pas les guillemets classiques
Donc si je dis pas de bêtise la çà ferme ta chaîne de caractère et ça en réouvre une autre
Bonjour, bonsoir
J'ai un petit soucis
je développe un bot discord actuellement
je souhaiterai que quand un membre n'as pas la permission de supprimé un ticket le bouton ne fonctionne pas, comment pourrai-je faire ?
juste c'est quoi le meilleur schema prisma pour une n-m relation si je veux un truc dans le genre :
model User {
id Int @id @default(autoincrement())
name String @unique
age Int
phone String @unique
teams UsersTeamsJoin[]
teamId Int
createdAt DateTime @default(now())
}
model Team {
id Int @id @default(autoincrement())
name String @unique
users UsersTeamsJoin[]
}
model UsersTeamsJoin {
user User @relation(fields: [userId], references: [id])
userId Int // relation scalar field (used in the `@relation` attribute above)
team Team @relation(fields: [teamId], references: [id])
teamId Int // relation scalar field (used in the `@relation` attribute above)
assignedAt DateTime @default(now())
@@id([userId, teamId])
}
le mieux c'est de partir sur de l'implicite ou pas ?
le querying a l'air plus simple mais j'ai peur de perdre des informations genre le datetime de la relation (même si je peux le stocker autre part) et je sais pas non plus si c'est plus opti
Hello tout le monde j'ai un soucis et je ne comprends pas pourquoi sa ne fonctionne pas :
Je me sert d'un middleware pour proteger mes routes donc comme ceci :
const auth = require('../middleware/auth')
//create a post
router.post("/", auth, async (req, res) => {
Sauf que lorsque que je fais un appel api il me dise que je ne suis pas authorisée jusque ici tout vas bien mais lorsque j'ajoute la protection a mes appels api coté front elles se detecte pas :
const modifPost = () => {
const token = JSON.parse(localStorage.getItem('user')).user.token
const config = {
headers: { Authorization: `Bearer ${token}` }
};
axios.put('http://localhost:4200/api/posts/' + post._id, config, {
userId: currentUser.user._id,
desc: userDesc,
isAdmin: currentUser.user.isAdmin
})
.then(response => response.status)
.catch(err => console.warn(err));
console.log(currentUser)
J'ai pas trouver dans la doc je n'est pas réussi
Je voudrai que si la personne n'as pas le grade admin par exemple, il ne peux pas fermé le ticket donc exécuter se bout de code
@vernal sluice si tu mets le role défault ??
En faite ses se que je voudrai mais je sais pas ou le mettre (je débute en js)
@vernal sluice si tu débute en JS , commencé avec node js c'est conseillé ... Il faut que tu es des bases en JS
Bas j'ai fais sa avant
Enfaite en regardent la doc js tester les lignes et soit sa désactive ma fonction et le ticket n'est pas fermable soit sa fait crash le bot
Prcq j'ai déjà fais du js avant les bots je faisais du js web c'était archi différent
tu as crée des roles ?
Ouais j'en n'est deux pour tester
et tu as set des permissions ?
J'ai la perm admin sur un oui
const { Permissions } = require('discord.js');
guild.roles.create({ name: 'Mod', permissions: [Permissions.FLAGS.MANAGE_MESSAGES, Permissions.FLAGS.KICK_MEMBERS] });
Est la dernière ligne ducoup je l'as mets au dessus de ma ligne interaction.channel.delete()
Si j'ai bien compris ?
il faut que tu set une permission deleted pour le role
C'est à dire set une perm deleted
Le problème ses que j'ai une erreur j'arrive pas a voir de ou elle vient
Il me dit que Guild n'est pas définie sauf que jsp ou et comment la définir
Sa reviens au même problème que hier soir le bot crash
Je veux pas crées un rôle je veux que si la personne a un certain rôle alors il peux fermé le ticket sinon sa envoie un message pour dire qu'il n'as pas la perm
if (interaction.member.roles.cache.has("iddurole"))
Ok merci
Bonjour pourrait-on me dire si cette requete est sujet a de l'injection sql svp 😅
INSERT INTO server (guildId, guildOwnerId) VALUES ("${guild.id}","${guild.ownerId}")
D'après toi ?
non mdrr
je suis habituer a faire du php moi et me semble c'est comment en php il faut passer des ? comme parametre et bind apres ? 😅
INSERT INTO server (guildId, guildOwnerId) VALUES (?, ? ) ${guild.id}, ${guild.ownerId}
il me semble que la requete qui n'est pas soumise a l'injection ressemble a sa ? 😅
Tu sors ça d'où ?
je faisait du discord js avant mais j'ai un peu oublier les bases de données contre l'injection mdrr
Regarde simplement la Doc de ton package
c'est mieu comme ca non ? 😅
db.query('INSERT INTO server (guildId, guildOwnerId) VALUES (?, ?)', [guild.id, guild.ownerId]);
Difficile à dire si je connais pas le package que tu utilises ^^
oui
là c’est good
sinon les valeurs seront affichées, et là aie aie aie
là, tu auras juste ?,? comme valeurs si tu check ta requête post lancement
donc c’est good 👍
yep je les bind apres x)
exactement
merci mdrr j'ai du mal encore avec ces requete la xd
yep je sais en php je fait des requet sql et je bind les param deriere x)
tu fais juste des requêtes préparées avec pdo, et tu bindValues ou bindParam
bindValue x)
yep
je passe :nom et apres je bindparam x)
je sais tqt moi aussi je l'utilise une fois de temps en temps xd
#discussion-dev
possible d'importer une connexion bd qui se situe dans un autre fichier ? 😅
importer la connexion situer dans mysql.js(a la racine) dans l'index.js(racine egalement)
Qui utilise encore du PHP 😜

yep, check les modules.export
j'ai fait justement mais j'ai une erreur, j'ai fait sa x)
const mysql = require('mysql')
const db = mysql.createConnection({
host: "localhost",
user: "root",
password: "",
database: "bot"
})
db.connect(function (err) {
if(err){
throw err;
}else{
console.log(`CONNECTÉ A LA BASE DE DONNÉES`);
}
})
module.exports = db
sa c le mysql.js
Tout le monde ? X)
Aha, tu as de l'humour toi !
Toujours
et j'appel comme sa dans l'index
const db = require('./mysql.js')
Commence par utiliser mysql2, et utilise l'async/await, c'est plus propre
Et encore mieux, passe à mariadb ou postgres
Y'as pas le sql lite qui existe ?
c un autre package mariadb ? 😅
C'est juste un type de basse de données je crois
je l'utilise en php mais je sais pas comment le mettre en discord.js xd
Oui c'est un autre package du coup, et oui c'est une base de données
en nodejs, pas en discord.js pitié
J'ai jamais compris à qoui servait le async et le await 
T'es surement un dev php c'est pour ça :p
Au moins il était pas en discord py 
Vu comme ça x)
Non x), j'ai juste fait du discord.js et un peux de html et un tout petit peux de css
Mais sérieusement ça sert à quoi ?
Hello ! je viens vers vous car je cherche une solution à mon problème, j'ai un bot qui a besoin de se connecter en vocal, j'utilise la dépendance "ffpmeg", en local tout va bien tout se lance et tout marche parfaitement bien, mais quand je lance mon bot sur mon VPS avec PM2 alors un message se met en place disant ffpmeg/avconv not found, j'ai essayé d'installer ce qui manquait mais ça ne change rien pouvez vous m'aider
Async c'est pour ajouter une action dans une queue
En gros l'action sera pas faites direct, elle sera faites quand le moteur aura le temps et du coup on continue l'execution du code sans attendre la résolution
await permet de forcer l'attente en gros (équivalent du .then)
Typiquement une requête SQL c'est async car on va communiquer avec un serveur distant, donc c'est lent et donc se serait dommage de bloquer notre serveur systématiquement pour ça
j'aimerais faire un systeme d'etape dans ma commande, quelqu'un saurais m'aider ? comme par exemple
etape 1 => le joueur fait !prefix
etape 2 => le bot repond saisissez le nouveau prefix
etape 3 => le joueurs ecrit le prefix
etape 4 => le bot ecrit le nouveau prefix est ...
State machine save en ram
Faudrait pas le stocker dans une bdd ?
Parceque s'il il le fait dans la ram si il rede le bot y'as plus rien
Si il veut garder le contexte entre deux process oui mais bon c'est chiant et c'est très souvent overkill
Ok
Ah et aussi y'as discord akairo qui est pas mal pour ces message de config
À la drafbot
Et ça permet de pas galèrer avec les collecter x)
je peut trouver ou de la doc pour utiliser ? ^^
bonjour, j'ai eu cette erreur mais je ne sais pas du tout d'où elle vient, possible de m'aider svp 😅
tu a rajouter quoi dans ton code ? l'erreur signale que la forme de ton api n'est pas la bonne
Bonjour j'utilise les handler pour faire mon bot, est t'il possible de definir tout mes embed dans un fichier emed.js par exemple et de les return afin de les appeler au besoin ?
Bien sûr
In programming, modules are components of a program with one or more functions or values. These values can also be shared across the entire program and can be used in different ways. In this article, I will show you how to share functions and values by exporting and importing modules
Tient un tuto qui explique
Bon je te donne un exemple
exports.embedHelp = tonembed
exports.embedPing = tonembed
Ensuite tu require et t'as tes embeds
Mais je te conseille de faire ça que si tu les utilises plusieurs fois
je vous remercie deu coup si je comprend bien je fait dans mon emed.js
mon_embed...
export mon_embed
et dans le fichier ou je veut ecrire l'embed je fait un require du fichier emeb ? 😅
je vais regarder le tuto merci beaucoup ! ^^
Ça peut aussi t'aider
tqt je connais la doc de discord;js mdrr x)
Non, à partir si tu dev en ts
Mais sinon tu dois vraiment faire exports.tavariable = tavaleur
et là où t'en as besoin
const embeds = require('embeds.js')
embeds.tavariable
Ts = typescript
ah desoler 😅
No problem
j'ai comprit comment faire la ca devrais aller je vais essayer ^^
euxx je comprend pas l'erreur 😅
Uncaught DiscordAPIError DiscordAPIError: Invalid Form Body
embeds[0].description: This field is required
mon embed a une description 😅
const test1 = new Discord.MessageEmbed()
.setColor("FAC003")
.setTitle('Premier test')
.setAuthor({ name: 'Atium', iconURL: '', url: '' })
.setDescription(`Le premier test`)
.setTimestamp()
.setFooter({ text: 'Atium', iconURL: '' });
Essaye en remplaçant les ` par "
C'est pas la description ça
@normal lichen
Oui mais la description n'as pas d'erreur, alors c'est ce qui vient avant
J’ai rajouté juste embeds.js, et message.channel.send({embeds: [embeds.test]})
Et en haut j’ai const embeds = rquire(le fichier embed)
Console log embeds.test
Je doit partir je vous remercie j’essaierai toute a l’heure, merci beaucoup pour votre aide !
Ça tombe bien moi aussi
T'essayeras
Pour moi t'exportes mal ton embed ça vient de ça
j’ai rajouté des fichiers
Je verrais bien, je redemanderais sinon ^^
J’ai eut cette erreur ce matin sa venais d’une erreur dans un embed ^^
on l’a dit de vérifier les slashcommands donc je vais faire ça après
Bonjour, comment vous faite pour rafraichir le placeholder du menu lorsqu'on fait un choix dans #activer-des-notifs
Le message est édité à chaque interaction 😉
ok merci 💪
Lorsque j'édite l'interaction et que je fais un reply après cela me met l'erreur "Interaction has already been acknowledged"
Tu as plusieurs instances de ton bot ouvert ?
Nop que en local
J'ai réessayer, l'édit marche mais le reply non
Inverse
Met d’abord le reply puis l’édit
<SelectMenuInteraction>.message.edit()
Quelqu’un sais comment connecter mamp(base de données sur mac) a mon bot discord svp ^^
J’ai essayé de renseigner le compte root et également un compte que j’ai créé pour ça mais sa fonctionne pas
mamp c'est juste une bdd mysql de mémoire donc utilise ça


