#javascript-typescript

1 messages · Page 114 of 1

naive ivy
#

la derniere version de node se met toute seule dans vscode ou faut que je la mette ?

keen narwhal
#

bh elle est présente en local

#

juste fais npm init

#

au moins ça seras fais

naive ivy
#

ok thanks

gentle zinc
#

Dans l'index.js :

// Initialisation du cache des invitations
const invites = new Collection();
    // Passe en revue toutes les guildes
    client.guilds.cache.forEach(async (guild) => {
    // Récupére toutes les invitations de guilde
    const firstInvites = await guild.invites.fetch();
    // Définis la clé comme l'ID de la guilde, et créez une carte qui contient le code d'invitation et le nombre d'utilisations.
    invites.set(guild.id, new Collection(firstInvites.map((invite) => [invite.code, invite.uses])));
  });
module.export.invites = invites;

Erreur :

                      ^
TypeError: Cannot set properties of undefined (setting 'invites')```
#

j'ai oublié le s ..

keen narwhal
#

module.exports

gentle zinc
#

oui voilla ^^

copper pagoda
#

ça marche du coup ?

naive ivy
#

merci de l'aide

keen narwhal
naive ivy
keen narwhal
#

ah ok

naive ivy
#

pour tte la soirée

gentle zinc
# copper pagoda ça marche du coup ?
                                   ^
TypeError: invites.get is not a function```

Voici le bout de code dans guildMemberAdd.js :
```js
        invites = require('../../index.js');

        const newInvites = await member.guild.invites.fetch()
        const oldInvites = invites.get(member.guild.id);
        const invite = newInvites.find(i => i.uses > oldInvites.get(i.code));
        const inviter = await client.users.fetch(invite.inviter.id);
        
        context.fillText(`#${member.invite.inviter}`, canvas.width / 2.5, canvas.height / 1.8)
naive ivy
#

mais demain je m'y remets

keen narwhal
#

console.log(invites) ?

gentle zinc
#

je vais test oui

keen narwhal
#

module.exports = invites

#

sinon

gentle zinc
copper pagoda
#

Essaye invites.invites.

keen narwhal
#

mdr

#

dcp ouais

gentle zinc
keen narwhal
#

non

#

invites.invites.get

copper pagoda
gentle zinc
#
                                                                ^
TypeError: Cannot read properties of undefined (reading 'get')```
copper pagoda
#

Remontre le code en entier stp.

gentle zinc
# copper pagoda Remontre le code en entier stp.
        invites = require('../../index.js');

        const newInvites = await member.guild.invites.fetch()
        const oldInvites = invites.invites.get(member.guild.id);
        const invite = newInvites.find(i => i.uses > oldInvites.get(i.code));
        const inviter = await client.users.fetch(invite.inviter.id);
        
        context.fillText(`#${member.invite.inviter}`, canvas.width / 2.5, canvas.height / 1.8)
copper pagoda
#

Mets direct oldInvites voir.

gentle zinc
copper pagoda
#
const invite = newInvites.find(i => i.uses > oldInvites);

Met ça voir.

gentle zinc
copper pagoda
#

Oki je vois

gentle zinc
#

console.log(inviter) => { invites: Collection(0) [Map] {} }

copper pagoda
#

Essaye de console.log oldInvites pour voir.

gentle zinc
#

oki

gentle zinc
#

undefined

copper pagoda
#

Visiblement il trouve rien.

gentle zinc
#

ptetre

copper pagoda
#

ça changera pas car si c'est undefined

#

En faites c'est comme si il trouvait aucune invitation pour le serveur.

gentle zinc
#

L'ID de la personne qui join

copper pagoda
#

C'est l'id de la personne qui join ?

gentle zinc
#

ID de la guild pardon !

copper pagoda
#

Ah oui oki

#

Bizarre qu'il trouve pas les invites.

gentle zinc
#

pourtant le chemin est bon je pense

#

../../index.js

copper pagoda
#

C'est surement dans l'enregistrement dans index.js qui va pas.

gentle zinc
#
const invites = new Collection();
    client.guilds.cache.forEach(async (guild) => {
    const firstInvites = await guild.invites.fetch();
    invites.set(guild.id, new Collection(firstInvites.map((invite) => [invite.code, invite.uses])));
  });
module.exports = invites;```
lone flax
#

Tu veux faire quoi @gentle zinc ?

gentle zinc
lone flax
#

Et ça coince où ?

gentle zinc
#

Sur l'event guildMemberAdd il ne trouve pas oldInvites il dis qu'il est indéfini

#
        invites = require('../../index.js');

        const newInvites = await member.guild.invites.fetch()
        const oldInvites = invites.invites.get(member.guild.id);
        const invite = newInvites.find(i => i.uses > oldInvites.get(i.code));
        const inviter = await client.users.fetch(invite.inviter.id);
        
        context.fillText(`#${member.invite.inviter}`, canvas.width / 2.5, canvas.height / 1.8)
lone flax
#

Tu veux juste mettre le nom de la personne qui a rejoint ?

gentle zinc
#

Oui puis par la suite mettre le nombre d'invitation pour pouvoir faire un inviteTrackers à pars mais la oui juste le nom de la personne qui a invité le membre en question

lone flax
#
client.on("guildMemberAdd", (member) => {
  ctx.fillText(`#${member.user.tag}`, canvas.width / 2.5, canvas.height / 1.8);
});
#

Ca marche pas ça ?

gentle zinc
#

Oui mais ça c'est le nom de la personne qui a joint exact mais on cherche a avoir le nom de la personne qui l'a invité en gros

lone flax
#

Bah donc ne me dis pas que c'est le nom de la personne qui a rejoint huh

#

Ok bon

#

T'es en quelle version de discord.js ?

gentle zinc
#

oui juste le nom de la personne qui a invité le membre en question

#

en v.13.9.0

lone flax
#

Tu ne peux pas récupérer l'invitation qui a été utilisé par le membre visiblement

#

Donc il faut aller faire ça manuellement c'est un peu pourri

gentle zinc
#

compatible v.13

lone flax
#

Ouais donc c'est un peu pourri c'est bien ce qu'il me semblait

#

Il fout toutes les invitations dans une liste

#

Et dès qu'un joueur rejoint, il regarde quelle invitation a eu un membre en plus

#

Et donc il conclut que cela vient de là

#

Bah copie/colle le code directement au pire non ?

gentle zinc
#

J'ai fait exactement comme lui sauf que moi j'ai pas tout mis dans l'index.

#

J'ai des dossiers events donc j'utilise aussi module.exports

lone flax
#

Ah bah ça ça vient sûrement de ton handler du coup

#

Je ne le connais pas

gentle zinc
#

pour inviteCreate, inviteDelete, guildCreate, guildDelete etc .. et a chaque fois je fais le module.exports

gentle zinc
lone flax
#

Ouais j'imagine

#

Je ne sais pas t'aider sorry

gentle zinc
# lone flax Ouais j'imagine

InviteCreate.js :

invites = require('../../index.js');

module.exports = {
    name: 'inviteCreate',
    once: false,
    execute(client, invite) {
        // Mise à jour du cache sur les nouvelles invitations
        invites.get(invite.guild.id).set(invite.code, invite.uses);
    }
}```
InviteDelete.js :
```js
invites = require('../../index.js');

module.exports = {
    name: 'inviteDelete',
    once: false,
    execute(client, invite) {
        // Supprimer l'invitation du cache
        invites.get(invite.guild.id).delete(invite.code);
    }
}```
#

@copper pagoda ici du coup faut ajouter le parametre invite :

module.exports = {
    name: 'guildMemberAdd',
    once: false,
    async execute(client, member)
copper pagoda
#

Ouais excuse moi j'avais rdv.

copper pagoda
gentle zinc
copper pagoda
gentle zinc
#

ah

keen narwhal
#

Salut je cherche un truc pour désactiver mon anti link avec une commande comme +antilink off et +antilink on 🙂
Si quelqu'un peut m'orienter sa serait avec grand plaisir ! ( DISCORD JS V13 )

gentle zinc
#

avec un console.log('oldInvites') maintenant j'ai ça

copper pagoda
gentle zinc
#
Collection(2) [Map] { 'RTScrZMyew' => 10, 'VssApEgK' => 0 }```
copper pagoda
#

Ok maintenant tu peux get du coup comme sur le lien avec i.code

copper pagoda
gentle zinc
#

Faut enlever le parametre member ici ?

#

ah bah oui, il a pas besoin de member

#

bon bah ok j'ai réussi, enfaite dans l'index, il fallait tout mettre dans la fonction ready

#

Merci pour toute votre aide Emoji_Sparkles

copper pagoda
sturdy hatch
#

Bonsoir, je débute dans le code donc je ne m'y connais pas du tout.
Mais je ne trouve pas le bouton exécuter, je suis donc allé dans l'onglet exécuter et déboguer mais je n'ai toujours rien trouvé. Je vous mets un petit screen de mon écran. (Le token est déjà reset parce que je sais qu'il ne faut pas le montrer.

#

Désolé si ça peut paraître bête comme question mais je suis vraiment débutant.

copper pagoda
barren fractal
#

Bonsoir tout le monde ! Je suis face à un problème, en gros je suis en pleine création d'un système d'exploitation pour m'entrainer au BackEnd mais là je suis bloqué, en gros pour les fenêtres, en gros je voudrais que seulement le banner de la page qui s'ouvre puissent être drag&drop et que la page entière suive la banner, une idée de comment je pourrais faire ? C'est du JQuery

#

Quand j'indique Brave banner il n'y a qu'elle qui bouge

#

Et quand j'indique .brave en entier, je peux drag&drop toute la page :/

sturdy hatch
sturdy hatch
#

Oui

#

C'est bien ça ?

#

J'ai ce dossier

raw birch
sturdy hatch
#

J'ai essayé de faire qlq chose et ça m'a mis ça comme erreur

raw birch
#

Ce rond blanc signifie que ton fichier n'est pas sauvegardé

sturdy hatch
#

Je l'ai sauvegardé

#

Ca m'a mis cela

raw birch
sturdy hatch
#

J'ai pas bien compris 😅 je l'ai déjà fait non

raw birch
sturdy hatch
#

D'accord, merci

copper pagoda
raw birch
copper pagoda
# raw birch Ça a changé ?

Ouais y a la V14 qui est sortit y a 4 jours après si tu préfères faire de la V13 va dans ton package.json et dans discord.js au lieu d'avoir ^14.0.3 tu mets 13.9.0 et tu fais npm i dans ta console.

sturdy hatch
copper pagoda
sturdy hatch
#

Ca me met cela

copper pagoda
sturdy hatch
#

J'ai enlevé les guillemets

fading glacier
# sturdy hatch

dans ta toute première ligne, tu importes Intents qui ne te sers plus à rien. À la place tu dois importer GatewayIntentBits pour qu’ensuite il soit reconnu dans ton code (sinon tu le sors de nulle part vu que tu ne l’as pas défini)

jovial lion
#

Bonsoir !
Je voulais savoir, quelqu'un a déjà vu cette erreur ?
Mon code en dessous

copper pagoda
# jovial lion

ça vient de ton .catch il faut que tu mettes un .then avant

novel crow
#

Salut je cherche quelqu'un qui a déjà utilisé MATTER.JS svp c'est pour une question

naive ivy
#

bonsoir !

#

peut-être un rapport avec la nouvelle librairie V14 ?

novel crow
#

Comment utiliser un svg avec matter.js ?

idle ice
novel crow
#

Je ne comprend pas pourquoi ça ne fonction pas: var path = $("#svg").find("path");
var svg1 = Matter.Svg.pathToVertices(path, 30);
World.add(svg1);

#

<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
width="225.000000pt" height="225.000000pt" viewBox="0 0 225.000000 225.000000"
preserveAspectRatio="xMidYMid meet" id="svg">

<g transform="translate(0.000000,225.000000) scale(0.100000,-0.100000)"
fill="#000000" stroke="none">
<path d="M911 2233 c-21 -18 -841 -2138 -841 -2175 0 -10 9 -27 20 -38 18 -18
33 -20 188 -20 119 0 173 4 185 13 10 7 67 148 130 322 l112 310 401 3 401 2
118 -307 c68 -178 126 -315 137 -325 18 -16 43 -18 199 -18 166 0 180 1 199
20 11 11 20 28 20 38 0 32 -878 2166 -897 2179 -12 9 -66 13 -184 13 -144 0
-170 -2 -188 -17z m323 -861 c71 -191 131 -353 134 -359 3 -10 -54 -13 -265
-13 l-269 0 103 278 c57 152 116 314 131 360 14 45 29 82 32 82 3 0 63 -156
134 -348z" />
</g>
</svg>

fading glacier
fading glacier
# naive ivy

Quand tu veux importer discord.js complètement (ici sous le nom de Discord), tu dois faire comme ceci: const Discord = require('discord.js');.

Par contre si tu ne veux pas tout importer, comme tu l’as fait en partie ici, tu dois faire const { Client, ActionRowBuilder, ButtonBuilder } = require('discord.js');. Après dans ces importations ici tu as besoin des intents. En v14, le nom a changé et n’est plus Intents mais GatewayIntentBits. Donc tu as juste à importer ça de la librairie discord.js, et à remplacer tes deux Discord.Intents.FLAGS… par GatewayIntentBits…

#

Aussi, si je ne me trompe pas, tu peux importer IntentsBitField de discord.js à la place de GatewayIntentBits, pour ensuite pouvoir reprendre ce que tu avais mit en remplaçant Discord.Intents.FLAGS par IntentsBitField.Flags

naive ivy
#

je vais tester ça de suite

#

j'ai essayé les deux mais ça me met le même message d'erreur

fading glacier
#

Pourquoi utiliser discord-button ?

fading glacier
naive ivy
naive ivy
fading glacier
naive ivy
#

j'ai récupéré mon ancien code

fading glacier
#

discord-buttons n’est plus mis à jour et ne marche plus il me semble

naive ivy
#

j'ai supp les const avec discord-buttons

fading glacier
#

Montre le code que tu as maintenant

naive ivy
fading glacier
#

Ton erreur vient du fichier help.js, montre ce fichier stp

naive ivy
#

c'est pas l'embed ?

fading glacier
#

Pourquoi tu recréer un client dans chaque fichier ?

#

En gros ce qu’il te faut, c’est un fichier principale, ton index.js avec dedans ce qu’il faut pour allumer ton bot (création du Client + login)

naive ivy
#

aaah mais j'ai même pas vu

naive ivy
fading glacier
#

Non, sinon ça veut dire que tu relances ton bot à chaque fois

naive ivy
#

et après je crée une const client à partir du fichier index ?

fading glacier
naive ivy
#

merci beaucoup !

naive ivy
#

le bot est bien allumé, il fonctionne

#

mais lorsque je marque bouton dans le chat rien ne se passe

#

je lui ai bien accordé les gateway intents sur le dev portal

keen narwhal
#

Pour le style des boutons faut importer mtn

#

const { ButtonStyle } = require('discord.js');

#

@naive ivy

naive ivy
#

c'est super simple les slash commands en fait

copper pagoda
#

En l'occurrence là c'est 1 puisque c'est Primary.

keen narwhal
#

Ah y’a des numéros pour