javascript - Efter att några Angular1-komponenter har dött, förblir resten samma?


Jag är bara nyfiken på att veta, är det som efter borttagning av några komponenter som:

Resten av de andra komponenterna kommer att förbli samma, eftersom det inte nämns i bilden ovan

som :

  1. Tjänster,
  2. Händelse (sända, avge, på)
  3. kör block
  4. konstant
  5. konfiguration
  6. Och många andra.

Hoppas att frågan ovan är giltig. Om så är fallet, vänligen ge mig en idé om vad som fortfarande återstår, så att jag känner mig lättare i att lära mig/anpassa mig till nya Angular 2.

TypeScript :

Jag har sett ändringarna i klassorienterade blockändringar i TypeScript som:

      class MyComponent {
          constructor() {
              this.name = 'Max'
          }
          sayMyName() {
              console.log('My name is', this.name)
          }
      }

Betyder det att de vanligt använda DOM-manipulationsfunktionerna som

  1. document.getElementBy
  2. window-objekt
  3. Och andra saker kommer att vara lika till viss del?

Vänligen ge mig någon referens eller idé om hur mycket Typescript har förändrats

Svar #1

Fråga 1:

Den hög nivå abstraktionen är fortfarande densamma (kontroller, direktiv, tjänster), men alla implementeringsdetaljer ändrades eftersom ramverket skrivs om i TypeScript.

Till exempel kommer Angular-moduler att överges till förmån för ES6-inbyggda moduler, vilket betyder att run-block, konstant och config inte kommer att vara relevanta. Eftersom de dock behåller beroendeinjektion måste någon form av konfiguration finnas, så vad du än kan göra i config och run kommer fortfarande att vara möjligt.

Fråga 2:

Du har nog förväxlat TypeScript med JavaScript. Den förstnämnda har alltid haft en sådan syntax (det kommer nästa version av JavaScript (ES6/harmony) också ha i viss omfattning).

Men språkändringen påverkar inte hur du använder ramverket eftersom TypeScript ska vara en superset av JavaScript, så det mesta giltiga JS är också giltigt TS. Du behöver inte använda funktioner som är specifika för TypeScript om du inte vill.

Svar #2

Baserat på min förståelse av hur Angular 2 kommer samman ser jag det här sättet som de andra delarna passar ihop på.

Ansvarsfriskrivningar

  • Jag är inte utvecklare på projektet, bara en kille som försöker hänga med i projektet medan det utvecklas.
  • Det nuvarande tillståndet för Angular 2 är alfa/developer preview och kan/kommer att förändras i takt med att utvecklingen fortskrider

Översikt

När Angular 1.* utvecklades i sin mognad fanns det en tydlig rörelse mot att använda konventionella JavaScript-mönster (se controllerAs, bindToController, inga globala controllers) och genom att följa den konventionen kommer din kod för Angular 1.* att vara närmare anpassad till Angular 2. Den andra rörelsen som kommer att hjälpa dig när du förbereder dig för Angular 2 är att tänka på din applikation i termer av komponenter (directive + controller med tjänster injicerade).

Tjänster

Detta är klasser som kan injiceras i komponenter

Händelser (sända/utsända)

Detta är en pub/sub-implementering baserad på den ärvda $scope-modellen som inte kommer att finnas i Angular 2, så en annan händelsemodell kommer behöva implementeras. Jag har inte hört detta diskuteras av Angular-teamet, så antingen får man ha tålamod eller välja en annan pub/sub-modell att implementera.

Kör block

Med Angular 2 som är komponentbaserat när appen körs är en direkt korrelation med konstruktorn för rotkomponenten (den som bootstrappas)

Konstanter

Konstanter i Angular 1 är bara värden som kan injiceras i andra komponenter, inget har förändrats här och värden kan injiceras i komponenter i Angular 2.

Konfiguration

Med det angulara modulsystemet som försvinner till förmån för ES6-moduler kan idén med konfiguration (att initiera värden för en tjänst) göras i tjänstens konstruktor. Dessutom kommer Angular 2 att stödja idén att ladda ytterligare komponenter på begäran, så konfiguration kan göras senare såväl som vid applikationens start.

referenser

  • Angular 2-projekt startsida https://angular.io/
  • ng-conf-videor https://www.youtube.com/user/ngconfvideos
  • angular 2 todo-demonstration https://www.youtube.com/watch?v=uD6Okha_Yj0
  • angular 2 formulär introduktion https://www.youtube.com/watch?v=4C4bmDOV5hk
  • kom igång-video https://www.youtube.com/watch?v=HmWm21cCAXM