博客
关于我
AngularJS之Scope及Controller(一)
阅读量:409 次
发布时间:2019-03-05

本文共 1253 字,大约阅读时间需要 4 分钟。

前言

之前接触过基本的AngularJS,虽然未深入,但本系列将重点介绍AngularJS的核心内容,涵盖模块、控制器、服务等关键部分,并通过实例展示其使用方法。在实际项目中曾用过Avalon,但因其不被广泛采用而放弃。相比之下,AngularJS作为业界流行的前端框架,广泛应用于开发复杂的单页应用,招聘市场对其要求普遍较高,这也是学习它的主要动机之一。每次敲写代码的过程都充满乐趣,仿佛在探索未知的领域,体验前所未有的成就感。

简短介绍

AngularJS是一款基于MVVM(模型-视图-控制器)架构的前端框架,提供了强大的数据绑定、路由功能和依赖注入(DI)等特性,极大地简化了前端开发过程。它支持客户端单元测试,能够处理复杂的UI开发任务。AngularJS应用程序在用户设备上运行时,将同时加载Model、View和Controller,并通过$rootScope等机制实现它们的深度结合。

HelloWorld

学习任何新技术,HelloWorld总是第一步。在AngularJS中,我们通过以下代码实现这一功能。
var app = angular.module('myApp', []);
app.controller('ctrl', ['$scope', function($scope) {    $scope.greeting = {text:"Hello"};}]);

同时,我们需要定义UI页面:

                                    {{greeting.text}},World    

最终效果为:

Hello,World

$scope与Controller

了解$Scope和Controller的关系,可以通过以下实例来体会。

UI页面:

                                    

Your Name : {{name}}

对应的JS代码:

app.controller('ctrlName', function ($scope) {      $scope.name = '';  });

效果展示:

Your Name :

Controller as语法

从AngularJS 1.1.5版本起,支持Controller as语法,简化了开发流程。以下是使用该语法的实现:

UI页面:

                                    

{{u.username}}

请输入你的名字 :

你的名字是 : {{u.name}}

对应的JS代码:

app.controller('myCtrl', function () {    var self = this;    self.name = "";    self.username = "xpy0928";});

效果展示:

请输入你的名字 :
你的名字是 : xpy0928

转载地址:http://bmlzz.baihongyu.com/

你可能感兴趣的文章
Python关于numpy.transpose函数详细解析附代码
查看>>
Python3导入自定义模块的3种方式
查看>>
python3打开txt文件_使用Python 3从文本文件读取句子并添加到列表中
查看>>
python3爬虫抓取智联招聘职位信息代码
查看>>
Python3爬虫数据入数据库---把爬取到的数据存到数据库,带数据库去重功能
查看>>
python3的 pymysql把mysqldb库取代了,让python 3支持mysqldb的解决方法
查看>>
Python3笔记——IDE的选择
查看>>
python3简单使用requests 用户代理,cookie池
查看>>
Python3组播通信编程实现教程(发送者+接收者)
查看>>
Python3编写网络爬虫10-数据存储方式三-CSV文件存储
查看>>
python3读取redis返回数据带有'b'的问题
查看>>
Python3连接MySQL
查看>>
Python关于isinstance函数的解析 | 附Demo(全)
查看>>
Python3:setup.py:完成所有任务的PIP安装(Build_ext+Install)
查看>>
python4.0 gil_Python 并发编程系列--1、浅谈GIL历史及对多线程的影响
查看>>
python60行绘图程序_天底下最简单的QT画图板,就一个类,60行代码
查看>>
Python: AES加密与解密
查看>>
Python: Range() 最大尺寸;动态的还是静态的?
查看>>
Python: Windows下用 multiprocessing 的深坑
查看>>
python:Could not find platform independent libraries <prefix>解决方法
查看>>