« Fonctionnement technique de Jeuxvideo.com » : différence entre les versions

→‎Passage en React : Entrée officielle de JVC pour les zones de texte absolument toutes
user: 413ff04 (?)
(Merci Rand pour la complete, j'avais des fonctions plus primaires.)
user: cb25c7e (?)
(→‎Passage en React : Entrée officielle de JVC pour les zones de texte absolument toutes)
Ligne 262 : Ligne 262 :


Pour simplifier, <code><span style="color:red;">messageTextArea</span>.value = <span style="color:green;">message</span>;</code> devient <code>fonctionreact(<span style="color:red;">messageTextArea</span>, <span style="color:green;">message</span>);</code> avec cette fonction.
Pour simplifier, <code><span style="color:red;">messageTextArea</span>.value = <span style="color:green;">message</span>;</code> devient <code>fonctionreact(<span style="color:red;">messageTextArea</span>, <span style="color:green;">message</span>);</code> avec cette fonction.
=== Fonction officielle JVC ===
Par ailleurs, en dehors de cette méthode, JVC a proposé une entrée native pour interagir directement avec REACT.
https://www.jeuxvideo.com/forums/message/1286112457
const editor = jvc.getMessageEditor('#bloc-formulaire-forum #message_topic'); //selectionner la zone de texte
if (null !== editor) {
    editor.insertText(`mon texte`); //pour insérer du texte à un endroit précis.
    editor.insertStartLine(`mon texte`); //pour remplacer toute la zone de texte.
}
Cette fonction est native au site, elle a la particularité de gérer nativement le focus.
Cependant, il est important d'enlever la variable "windows" Devant la fonction "jvc" , car très souvent, elle ne marche pas dans un environnement sandbox.
Et cette fonction prend directement en compte des sélecteurs CSS, exemple :
const selector = document.getElementById("message_topic")
jvc.getMessageEditor(selector).insertText('text'); //❌
const selector = "#message_topic"
jvc.getMessageEditor(selector).insertText('text'); //✅


== Liens externes ==
== Liens externes ==
Utilisateur anonyme