IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Pb import/export de class js avec webpack encore


Sujet :

Symfony PHP

  1. #1
    Membre éprouvé
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Par défaut Pb import/export de class js avec webpack encore
    Bonjour,

    J'ai un problème vraiment bizarre et je ne sais plus quoi faire.
    J'ai un projet en Symfony 5, et je veux utiliser du javascript. Jusque là, pas de soucis. Du coup, j'ai installé encore & compagnie, histoire de faire ça propre.

    Ce que je veux, c'est avoir une classe js, d'un côté, et de l'autre, un fichier qui va utiliser cette classe.
    Le soucis, c'est que ça ne fonctionne que si ma classe ne possède qu'un constructeur : à la moindre méthode que je rajoute, aussi basique soit elle, je ne vois plus rien.

    Est-ce que quelqu'un aurait une idée du soucis ?

    Voici quelques portion de code pour montrer le soucis :
    Webpack.config
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
        .addEntry('app', './assets/js/app.js')
        .addEntry('Chien', './assets/js/Components/Chien.js') 
        .addEntry('secretaryCtrl', './assets/js/secretaryCtrl.js')
    (pas certain que l'entrée "Chien" soit nécessaire).

    Là, ça marche, si je décommente "aboyer", ça ne marche plus.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    class Chien {    
        constructor(nom) {
            this.nom = nom;
        }
     
       /*aboyer() {
            console.log(this.nom + " aboie");
        }/**/
    }
     
    export default Chien;
    Code du fichier qui doit utiliser Chien.
    A noter que si jamais je décommente "aboyer" de la classe chien, alors même le console.log("test") ne se voit plus, par contre, si je commente "aboyer", je vois "test" et l'objet "toutou" est une instance parfaitement valide.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    console.log("test");
     
    import Chien from './Components/Chien';
    let toutou = new Chien("Milou");
    console.log(toutou);
    Appel du fichier dans mon fichier twig.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <script src="{{ asset('build/secretaryCtrl.js')}}"></script>
    Voilà... Merci d'avance si jamais quelqu'un à une idée parce que là, je n'ai plus aucune piste... ^^.

  2. #2
    Membre éprouvé
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Par défaut
    Si jamais ça intéresse quelqu'un, en fait, le soucis vient du fait que Webpack utilise babel et que la conversion ES6/ES5 semble un peu foireuse.
    Du coup, dans le webpack.config.js, il suffit de mettre en commentaire ceci pour que tout fonctionne bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        // enables @babel/preset-env polyfills
        /*((config) => {
            config.useBuiltIns = 'usage';
            config.corejs = 3;
        })*/
    Babel ne converti plus, donc ne foire plus rien. J'imagine que c'est au prix d'une moindre compatibilité sur les anciens navigateurs et il est peut être possible de modifier cette config pour que babel soit capable de prendre en compte le fait que dans une classe, parfois, il peut arriver (si si) qu'il y ait des méthodes, mais cette version là fonctionne.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WS 2008 R2] [Active Directory] importer / exporter des classes et attributs
    Par Christophe P. dans le forum Windows Serveur
    Réponses: 1
    Dernier message: 09/06/2017, 12h02
  2. import/export d'une liste avec stsadm
    Par Benzeghiba dans le forum SharePoint
    Réponses: 1
    Dernier message: 08/09/2008, 12h11
  3. import export de base mysql avec Java
    Par Tanebisse dans le forum Persistance des données
    Réponses: 3
    Dernier message: 27/05/2008, 11h09
  4. Réponses: 6
    Dernier message: 29/03/2008, 19h01
  5. [SQL2005] import/export de fichiers .INI avec des tables
    Par erisal dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 27/02/2007, 13h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo