Ich habe die folgende Komponente Eigenschaft (es ist im Grunde für eine Bootstrap-Alert-Komponente):Überprüfen Sie, ob prop Validierung bestanden
props: {
alertType: {
validator: function (value) {
return [ "success", "info", "warning", "danger" ].indexOf(value) >= 0;
},
default: "danger"
},
// Some more things
computed: {
classes: { //Compute the correct classes for the alert type
var classesObj ={
'alert-dismissible': this.dismissable
};
classesObj["alert-"+this.alertType]=true; //Problem if invalid
return classesObj;
}
}
Das funktioniert gut in dem Sinne, dass, wenn ich es nicht einen Alarmtyp liefern verwendet " Gefahr ", aber wenn ich einen Alerttyp bereitstelle und die Validierung nicht besteht, wird der alertType auf diesen Wert gesetzt und es wird eine Konsolenwarnung ausgegeben (was meines Wissens das beabsichtigte Verhalten ist).
Meine Frage ist, ob es innerhalb der classes
berechnete Eigenschaft möglich ist, um zu bestimmen, ob die alertType
prop weitergegeben oder Validierung fehlgeschlagen ist (und im Idealfall, wenn es bekommen fehlgeschlagen ist und der Standardwert verwendet, bezogen auf die Komponente prop Definition.
Dies trug dazu bei. Übrigens scheint es, dass die Warnung nur angezeigt wird, wenn Sie die Entwicklungsversion von Vue verwenden, also ist die Prop-Validierung vielleicht nur für Debugging-Zwecke gedacht. – apokryfos