Ich versuche, eine benutzerdefinierte Formularkomponente zu erstellen, die ich ng-model
verwenden kann, um zu binden. Ich habe viele Tutorials dazu gefunden, wie man das mit Direktiven macht, aber ich kann nicht herausfinden, wie man es mit Komponenten macht, da man keine link
Funktionen mit Komponenten haben kann und versuchen, die ngModel
Abhängigkeit zu übergeben diese this und versuchteÜbergabe ngModel an AngularJS Komponente
Error: [$injector:unpr] Unknown provider: $ngModelProvider <- $ngModel
ich auch gesehen habe: die Controller führt zu diesem Fehler
bindings: {
value: "=ngModel"
}
habe ich versucht, und dann wird der Wert für zwei-Wege-Bindung in der Steuerung einstellen, aber es doesn Es scheint nicht zu funktionieren.
Interessant.Also sagen Sie, Komponenten sollten niemals ngModel für die Ausgabe von Ergebnissen verwenden? Ich sehe das nicht als viel anders als eine 2-Wege-Bindung, die erlaubt ist. (obwohl ja 2-Wege-Bindung sollte auch sparsam verwendet werden) – Brian
Nun, ich zitiere die Dokumente. Es ist jedoch richtig, dass Sie ein Objekt mithilfe einer Zweiwege-Bindung in einer Komponente ändern können. Aber Sie können das Objekt nicht ersetzen. Und die Dokumente scheinen zu implizieren, dass dies nicht der beabsichtigte Weg war, Komponenten zu verwenden. Und wenn Sie das wirklich wollen, benutzen Sie einfach eine Direktive und Sie wissen genau, was Sie bekommen. – Toddsden
Also beim Erstellen von Formularelementen ist es nicht möglich, sie als Komponenten zu erstellen, und sie müssen als einfache Direktiven erstellt werden? Ich denke, das ist der Sinn von Komponenten, Elemente zu erstellen, die "Web Components" ähnlich sind. Daher sollte es nicht erforderlich sein, Richtlinien zu erstellen, um eine Schnittstelle zu den Daten des Formularelements bereitzustellen. Komponenten sollten in der Lage sein, ihre Daten auf irgendeine Weise zu exportieren. Naja ... – Incinirate