`

如何用AngularJS实现web开发的MVC框架

 
阅读更多

         MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码。

  • 模型(Model) 用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。“模型”有对数据直接访问的权力,例如对数据库的访问。“模型”不依赖“视图”和“控制器”,也就是说,模型不关心它会被如何显示或是如何被操作。

  • 视图(View)能够实现数据有目的的显示,实现了所有的系统和用户之间的业务交互。在视图中一般没有程序上的逻辑。

  • 控制器(Controller)只向view提供指示性标志变量和数据源,不对任何数据操作的方法做实现,只通过调用有model的属性或方法实现逻辑控制。也就是说controller处理了所有的业务逻辑。


         然而,仅仅有这些资源是不够的,你要对这些资源进行匹配和整合,也就是要配置页面的路由,路由在AngularJS中也占有很重要的地位,例如:

.when('/show_orders', {
     templateUrl: 'views/show_orders.html',
     controller: 'ShowOrdersCtrl'
})

        这样当用户在浏览器中输入的URL为'/show_orders'时,就会调用到'ShowOrdersCtrl'控制器,控制器则会处理所有有关这个页面的业务逻辑,例如,它可以给页面提供数据源:

$scope.orders = Order.get_orders();

    此时就涉及到模型(Model)了,模型只负责数据的增,删,改,查询,然后把数据返回给控制器(Controller)。这时控制器就可以提供数据给页面(View)。例如:

Order.get_orders = function () {
    return JSON.parse(localStorage.getItem("orders")) || [];
}

    这时候页面就会加载数据呈现给用户了,例如:

<li class=" clearfix list-group-item" ng-repeat="order in orders">
   <div class="p-left">
       <p class="font-1">{{order.person_name}}</p>
       <p>{{order.restaurant_name}} {{order.food_name}}</p>
   </div>
</li>

 

  • 大小: 21.2 KB
分享到:
评论

相关推荐

    Node.js+MongoDB+AngularJS Web开发

    Node.js 是一种领先的服务器端编程环境,MongoDB是最流行的NoSQL数据库,而AngularJS 正迅速成为基于MVC的前端开发的领先框架。它们结合在一起使得能够完全用JavaScript 创建从服务器到客户端浏览器的高性能站点和...

    Mastering Web Application Development with AngularJS

    并通过丰富的开发实例向读者展示了构建复杂应用的完整过程,包括学习使用AngularJS特有的基于DOM的模板系统,实现复杂的后端通信,创建漂亮的表单,制作导航,使用依赖注入系统,提高Web应用的安全性,使用Jasmine...

    Node js+MongoDB+AngularJS Web开发【英文版】 Brad Dayley

    Node.js是一种领先的服务器端编程环境,MongoDB是最流行的NoSQL数据库,而AngularJS正迅速成为基于MVC的前端开发的领先框架。它们结合在一起使得能够完全用JavaScript创建从服务器到客户端浏览器的高性能站点和应用...

    AngularJS开发下一代Web应用(中文高清版 带标签)

    AngularJS开发下一代Web应用(中文高清版 带标签) ...这本手册将为你介绍AngularJS,它是一个开源的JavaScript框架,它使用MVC架构、数据绑定、客户端模板以及依赖注入等技术,从而为构建Web应用创建急需的结构。

    精通AngularJS

    《精通AngularJS》深入浅出地讲解了AngularJS的开发概念和原理,并通过丰富的开发实例向读者展示了构建复杂应用的完整过程,包括学习使用AngularJS特有的基于DOM的模板系统,实现复杂的后端通信,创建漂亮的表单,...

    AngularJs Javascript MVC 框架

    开始接触AngularJs是在4月份来到新项目组,这时AngularJs还处于0.8未稳定版,项目中已经开始使用了,并且这套框架应用到了项目整个UI端,服务端也是未稳定的web api,真心佩服团队的勇气,对于新技术的热情,幸好...

    sash一款框架适合前端

    AngularJS是一个MVC模式的框架,但ReactJS是一个由Facebook开发的非MVC模式的框架。它允许你创建一个可复用的UI组件,Facebook和Instagram的用户界面就是用ReactJS开发的。3.Bootstrap框架Bootstrap是美国Twitter...

    Sash v9-bootstrap-5-admin-template 一款框架适合前端

    AngularJS是一个MVC模式的框架,但ReactJS是一个由Facebook开发的非MVC模式的框架。它允许你创建一个可复用的UI组件,Facebook和Instagram的用户界面就是用ReactJS开发的。 3.Bootstrap框架 Bootstrap是美国...

    AngularJS-下一个大框架

    具有数据绑定,MVW,MVVM,MVC,依赖注入的声明式模板和出色的可测试性都是用纯客户端JavaScript来实现的!AngularJS是一个创建富客户端应用的JavaScriptMVC框架,它组织良好,经过严格测试,多功能,强大并且十分灵活。你...

    angularjs基本项目架构

    在当前如此多的web框架下,angularjs能脱颖而出,从架构设计上就高人一等,双向数据绑定,依赖注入,指令,MVC,模板。Angular.js创新地把后台技术融入前端开发,扫去jQuery一度的光芒。用angularjs就像写后台代码,...

    YoYoCms-dev_i-log_AngularJSBootstrap_YoYoCms_框架_mvc_源码

    ASP.NET MVC 和 ASP.NET Web API 作为 web 框架Angularjs 作为单页面 SPA 框架EntityFramework 作为 ORM (对象关系映射) 框架Castle Windsor 作为依赖注射框架Twitter Bootstrap 作为 HTML/CSS 框架Log4Net 作为...

    lowladb-json-database:LowlaDB 是一个 JSON 数据库,内置移动同步和类似 MongoDB 的 API。 它旨在与当今的 Web 数据库(例如 MongoDB)和流行的 MVC 框架(例如 AngularJS)轻松集成

    它旨在与当今的 Web 数据库(例如 MongoDB)和流行的 MVC 框架(例如 AngularJS)轻松集成。 我们已经发布了适用于移动和 PC 浏览器的 Javascript 实现,我们正在开发适用于 iOS 和 Android 的原生版本,这些版本将...

    angularJS实现不同视图同步刷新详解

    作为angularJS框架MVC中M和V的桥梁,controller在整个angularJS的web应用中有着举足轻重的作用。 通常我们可以使用单例service的方式在不同的controller里面共享数据。比如在controller1中通过点击事件修改了service...

    详解JavaScript的AngularJS框架中的作用域与数据绑定

    AngularJS 是由 Google 发起的一款开源的前端 MVC 脚本框架,既适合做普通 WEB 应用也可以做 SPA(单页面应用,所有的用户操作都在一个页面中完成)。与同为 MVC 框架的 Dojo 的定位不同,AngularJS 在功能上更加轻...

Global site tag (gtag.js) - Google Analytics