Anzeige

 [Javascript] AngularJS item.name


HonniCilest

Erfahrenes Mitglied
#1
Hallo,

ich schreibe mir gerade für ein Backend von mir ein kleines AngularJS Frontend.

Im Frontend möchte ich ein neues Item anlegen und habe dazu item.name an ein input-Textfeld gebunden.
HTML:
<input type="text" ng-model="newItem.name">
Ich habe noch weitere Textfelder, für diese funktioniert das wunderbar. Nur bei name erhalte ich die Meldung, dass name ein schreibgeschütztes Property ist - vermutlich enthält es den Namen des Property selbst. Ich kann name jedoch perse nicht ändern, weil das Backend die Property als name erwartet.

Gibt es hier ein best practice (irgendeine Art Mapping) ohne das Backend anpassen zu müssen? Ich bin spontan bei Google nicht fündig geworden.



Viele Grüße
HC
 

ComFreek

Mod | @comfreek
Moderator
#2
Kannst du die komplette Fehlermeldung posten?

Ich zweifel daran, dass es wirklich an "name" liegt - dafür ist das ein viel zu häufig verwendeter Identifier. Trotzdem könntest du mal "newItem['name']" probieren.

Nutzt du tatsächlich noch Angular 1?
 

HonniCilest

Erfahrenes Mitglied
#3
Nutzt du tatsächlich noch Angular 1?
Keine Ahnung, ich bin zumindest der Überzeugung dass ich das aktuellste js File eingebunden habe.

Ist mein ersten AngularJs Projekt als Selbststudium, ich lerne gleichzeitig Javascript. Habe dazu ein eBook und eben ein Backend von mir mit REST Schnittstelle.

Problem hat sich erledigt, ich hatte einen Typo den ich vorher einfach nicht gesehen hatte :D
Mein mini-Client funktioniert nun.
 

ComFreek

Mod | @comfreek
Moderator
#4
Keine Ahnung, ich bin zumindest der Überzeugung dass ich das aktuellste js File eingebunden habe.
Ich habe das aus zwei Dingen geschlossen:
  • Du hast von "AngularJS" gesprochen. Das neue Angular (>= 2) heißt einfach nur Angular.
  • Du hast "ng-model" benutzt. Wenn ich mich nicht täusche, ist die Syntax bei >= 2 [(ngModel)], so oder so ähnlich.
Ich würde dir empfehlen, auf die aktuelle Version umzusteigen. Falls dein Buch noch eine alte Version benutzt, würde ich mir auch ein neues Buch zulegen.
 

HonniCilest

Erfahrenes Mitglied
#5
Interessant. Habe mich etwas belesen. Ich schätze dann habe ich wirklich Angular 1 verwendet.

Aber Angular und AngularJS unterscheiden sich ja schon grundsätzlich, AngularJS ist javascript basiert wobei 2+ TypeScript ist. Für meine MINI-Applikation ist das ok, es sollte nur eine kleine Demo für ein Selbststudium sein. Mein Ziel habe ich perse so erreicht.

Nächstes Ziel: TypeScript ;-)
 
Anzeige