2017-06-12 1 views
4

J'essayais de faire fonctionner VueJS avec Laravel et il se passe quelque chose de bizarre.Les moustaches de Vuejs ne fonctionnaient pas

Mon modèle:

<div id="tuto"> 
    <p>{{ texte }}</p> 
</div> 

Mon script VueJS:

var vm = new Vue({ 
    el: '#tuto', 
    data: { 
     texte: '<span>Mon texte</span>', 
    } 
}); 

Je reçois cette erreur:

Use of undefined constant texte - assumed 'texte' (View: /var/www/vhosts/choraleuniversitaire.fr/laravel.choraleuniversitaire.fr/chorale/resources/views/admin/choriste/index.blade.php)

Full error here.

Est-ce que quelqu'un sait où ça gâche?

Répondre

5

Si vous utilisez un fichier .blade.php alors vous devez faire:

<div id="tuto"> 
    <p>@{{ texte }}</p> 
</div> 

C'est parce que la lame utilise également des moustaches, ils être traité par lame avant même que la vue les voit, c'est pourquoi vous recevez une erreur de Laravel et non t de Vue.

Voir le Blade & JavaScript Frameworks section des documents Laravel pour plus de détails.

-1

datamust be fonction de Remerciez:

var vm = new Vue({ 
    el: '#tuto', 
    data: function(){ 
     return { 
      texte: '<span>Mon texte</span>' 
     } 
    } 
}); 
+1

données doivent être une fonction pour les instances de composant, il n'utilise des composants https://vuejs.org/v2/guide/components.html#data- Doit-être une fonction –