2017-03-03 4 views
1

Im Setup vuejs mit onsen ui versuchen, und ich bekomme diese Fehlermeldung:Fehler: Uncaught Typeerror: Vue.util.hyphenate ist keine Funktion

Error: Uncaught TypeError: Vue.util.hyphenate is not a function

Hier ist der gesamte Code:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/onsen/2.1.0/css/onsenui.css"> 
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/onsen/2.1.0/css/onsen-css-components.min.css"> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.2.1/vue.js"></script> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/onsen/2.1.0/js/onsenui.js">  </script> 
    <script src="https://unpkg.com/[email protected]"></script> 
</head> 
<body> 
    <div id="app"></div> 
</body> 
<script> 
    var vm = new Vue({ 
    el: '#app', 
    template: 
     '<v-ons-page>\ 
     <v-ons-toolbar>\ 
      <div class="center"> Title </div>\ 
     </v-ons-toolbar>\ 
     <p style="text-align: center">\ 
      <v-ons-button @click="$notification.alert(\'Hello World!\')">Click</v-ons-button>\ 
     </p>\ 
     </v-ons-page>' 
    }); 
</script> 
</html> 

Ich kann das nicht als ein bekanntes Problem finden. Ich habe es auch mit älteren Versionen wie 2.0.0 versucht.

Kann jemand helfen?

Antwort

2

Sir, ich treffe den gleichen Fehler mit dir, und ich versuche, den Fehler zu finden und es zu lösen. Laden Sie zunächst "https://unpkg.com/[email protected]" herunter, und ändern Sie den Quellcode des Skript-Doms in Ihren lokalen Ordner. Dann können Sie die "[email protected]" öffnen und diesen Code:

var register = function register(Vue, type, items) { 
 
\t (0, _keys2.default)(items).forEach(function (key) { 
 
\t  var value = items[key]; 
 
\t  key = Vue.util.hyphenate(key); 
 
\t  Vue[type](key, value); 
 
\t }); 
 
\t };

So können Sie die "Vue.util.hyphenate" sehen, aber jetzt vue haben diese Funktion nicht. Bitte verwenden Sie die gleiche Funktion aus dieser Datei.

ex:

var register = function register(Vue, type, items) { 
 
\t (0, _keys2.default)(items).forEach(function (key) { 
 
\t  var value = items[key]; 
 
\t  var hyphenate = function hyphenate(string) { 
 
\t \t \t return string.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase(); 
 
\t \t }; 
 
\t  key = hyphenate(key); 
 
\t  Vue[type](key, value); 
 
\t }); 
 
\t };

Mein Englisch ist so schlecht, und leider die Zeit zu nutzen.

1

In der letzten Version Vue.js wurden viele exponierte Methoden und Eigenschaften von Vue.util entfernt.

Also, Sie müssen Javascript-Datei herunterladen (https://unpkg.com/[email protected]) und ersetzen Code in 67 Zeile:

key = Vue.util.hyphenate(key);

zu diesem Code:

key = key.replace(/([a-zA-Z])([A-Z])/g, '$1-$2').toLowerCase();

Verwandte Themen