首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVW在Angular2中代表什么?

MVW在Angular2中代表什么?
EN

Stack Overflow用户
提问于 2016-11-25 09:40:58
回答 1查看 1.4K关注 0票数 3

我有很多介绍MVC,MVP,MVVM等等的链接。但是我没有得到一个,它告诉我M在Angular2中到底代表什么,V在Angular2中到底代表什么,W在Angular2中到底代表什么。也许对W有一个答案,那就是W代表任何东西。

有人能帮我举下面的例子吗。

AppModule:

代码语言:javascript
复制
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:

代码语言:javascript
复制
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();
  }
}

消息:

代码语言:javascript
复制
export class Message {
  private body: string;
  private sender: string;

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

AppService:

代码语言:javascript
复制
import { Injectable } from '@angular/core';
import { Message }        from './message';

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

所以我的理解是:

M(当然它代表Model)是领域模型。在上面的例子中,域模块是AppService。因此,大多数情况下,M是服务(除了一些类似于实用服务)。

V是View,它由组件的模板呈现。在上面的例子中,V是问候屏幕。

不管W是什么。它是一个看起来像控制器、ViewModel和任何东西的组件。

而且,上面示例中的类消息是一个实体模型,它不是M。

所以我说得对吗?你能帮帮我吗..

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-25 10:31:02

AppComponent类等价于控制器类,因此是您的W.

视图是HTML组件

模型是可以提供/注入的服务。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40801814

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档