2017-05-18 6 views
1

Ich baue eine SVG-Komponente, die einen Dateinamen ohne Erweiterung annimmt. Ich möchte dies erzwingen und einen Fehler werfen, wenn die Erweiterung verwendet wird.Wie man einen Fehler in Vue.js richtig wirft?

Da ich einen ES6 Compiler habe ich einfach so bin mit:

if (this.name.includes('.svg')) { 
    throw 'Do not use the svg extension'; 
} 

Ist das eine richtige Art und Weise einen Fehler in Vue.js zu werfen, oder gibt es einen besseren Weg? Momentan bekomme ich 2 Warnungen, wenn ich dies implementiere und es ausprobiere.

Ich bekomme ein [Vue warnen] mit Stacktrace und meinem eigenen Fehler. Am liebsten würde ich einfach eine Fehlermeldung in die Konsole werfen, um anzuzeigen, was ein Benutzer falsch gemacht hat.

Irgendwelche Gedanken zu diesem Ansatz oder Tipps, um dies besser in Vue.js oder javscript im Allgemeinen zu behandeln?

+1

Das ist ein richtiger Ansatz ist, wie ich glaube, die [vue warnen] Sie bekommen nur präziser über den Fehler, den Sie werfen Erwähnen Sie, wann der Fehler entstand, einschließlich Ihres Komponentennamens. –

Antwort

2

Sie sollen den Standard Typeerror verwenden:

Creates an instance representing an error that occurs when a variable or parameter is not of a valid type.

throw new TypeError("Do not use the svg extension", filename) 

TypeError-MDN

+0

Er fragt nicht, wie man einen errow wirft. Sie haben gerade den Dokumentationslink für Typerror gegeben. Er weiß, wie man einen Fehler wirft, und er tut das, er fragt, warum er vue warnen. –

+0

@ user7814783 Ich denke, er fragt auch den besseren Weg, um diese Art von Fehler zu werfen. –

+0

Ein bisschen von beiden ja ich will nur Bestätigung und eine mögliche Lösung oder Antwort, warum der zweite Fehler auch zeigt. Ich vermute, dass ich auf TypeError updaten werde und die doppelte Fehlermeldung "as is" für jetzt belassen werde. –

Verwandte Themen