Что означает MVW в Angular2?

У меня есть много ссылок, которые представляют MVC, MVP, MVVM и так далее. Но я не получил тот, который говорит, что именно означает M в Angular2, что V означает именно в Angular2 и что W точно означает в Angular2. Может быть, есть ответ для W. То есть W означает что угодно.

Может ли кто-нибудь помочь мне со следующим примером.

AppModule:

import { NgModule }           from '@angular/core';
import { BrowserModule }      from '@angular/platform-browser';

import { AppComponent }       from './app.component';
import { AppService }        from './app.service';


@NgModule({
  imports:      [
    BrowserModule
  ],
  providers:    [ AppService ],
  declarations: [ AppComponent ],
  bootstrap:    [ AppComponent ]
})
export class AppModule { }

AppComponent:

import { Component } from '@angular/core';
import { AppService }        from './app.service';
import { Message }        from './message';

@Component({
  selector: 'my-app',
  template: '<h1>{{message.body}}</h1>from<h2>{{message.sender}}</h2>',
})
export class AppComponent {
  private message: Message;

  constructor(appService: AppService) {
    this.message = userService.getMessage();
  }
}

Сообщение:

export class Message {
  private body: string;
  private sender: string;

  constructor() {
    this.body = 'hello, world';
    this.sender = 'Lcng';
  }
}

AppService:

import { Injectable } from '@angular/core';
import { Message }        from './message';

@Injectable()
export class AppService {
  getMessage(): Message{
    let message = new Message();
    return message;
  }
}

Итак, мое понимание таково:

M (конечно, это означает модель) является моделью предметной области. И в приведенном выше примере Доменный модуль является AppService. Таким образом, большую часть времени М это услуги (за исключением чего-то вроде коммунальных услуг).

V - это вид, который отображается шаблоном компонента. В приведенном выше примере V - экран приветствия.

W есть что угодно. И это Компонент, который выглядит как Контроллер, ViewModel и все, что угодно..

И класс Message в приведенном выше примере является Entity Model, которая не является M..

Так я прав? Не могли бы вы мне помочь, пожалуйста..

1 ответ

Решение

Класс AppComponent эквивалентен классу контроллера и поэтому является вашим W.

вид это компоненты HTML

Модель - это услуги, которые могут быть предоставлены / введены.

Другие вопросы по тегам