angularAMD快速入门

ngularAMD是作者 marcoslin 使用 RequireJS + AngularJS开发的前端mvvm框架,因此你可以使用它快速创建一款Web App.他特别适合快速开发SPA应用,适当的和更简单的方式。

 

我们整合AngularJS和RequireJS不应该是复杂的,它不是angularAMD。在行动中看到它,检测本网站显示的情况下,关键功能。确保加载你最喜欢的开发工具看到按需加载*.js文件作为您切换标签。

快速入门

定义main.js组件和依赖项:

require.config({ baseUrl: "js", paths: { 'angular': '.../angular.min', 'angular-route': '.../angular-route.min', 'angularAMD': '.../angularAMD.min' }, shim: { 'angularAMD': ['angular'], 'angular-route': ['angular'] }, deps: ['app'] });

引入RequireJS文件

<script data-main="js/main.js" src="require.js"></script>

使用RequireJS定义语句创建app.js

define(['angularAMD', 'angular-route'], function (angularAMD) { var app = angular.module("webapp", ['ngRoute']); app.config(function ($routeProvider) { $routeProvider.when("/home", angularAMD.route({ templateUrl: 'views/home.html', controller: 'HomeCtrl', controllerUrl: 'ctrl/home' })) }); return angularAMD.bootstrap(app); });

使用app.register创建控制器

define(['app'], function (app) { app.controller('HomeCtrl', function ($scope) { $scope.message = "Message from HomeCtrl"; }); });

点击这里查看一个简单的示例,你可以在这里查看到详细的帮助文档。

安装

bower

bower install angularAMD

node

npm install angular-amd

外链

//cdn.jsdelivr.net/angular.amd/0.2/angularAMD.min.js

使用

定义require.js 入口文件

我们定义main.js 作为项目的入口文件,在这里可以定义我们的组件以及组件的依赖项;然后在deps里设置我们的项目主文件 app.js

// 定义入口文件
require.config({ baseUrl: "./js/", urlArgs: 'v=' + (new Date()).getTime() + Math.random() * 10000, paths: { 'angular': './lib/angular.min', 'angular-route': './lib/angular-route', 'angularAMD': './lib/angularAMD.min', 'ngload' : './lib/' + 'ngload.min', 'ng-progress': './lib/ngprogress.min', 'vued.cat': './directive/cat', }, shim: { 'angularAMD': ['angular'], 'angular-route': ['angular'], 'ng-progress': ['angular'], }, deps: ['app'] }); 

启动 AngularJS

当所有的组件依赖项全部被定义完成,那么app.js作为 Angular 项目的入口文件,将开始执行启动程序.

define(['angularAMD'], function (angularAMD) { var app = angular.module(app_name, ['webapp']); ... // Setup app here. E.g.: run .config with $routeProvider return angularAMD.bootstrap(app); }); 

如果引导程序被触发,那么原有 ng-app就不应该被放置在 HTML中.angularAMD.bootstrap(app)将会取代程序启动。

配置路由

通过使用 angularAMD.route 我们可以动态配置所需要加载的 controllers;

app.config(function ($routeProvider) { $routeProvider.when( "/home", angularAMD.route({ templateUrl: 'views/home.html', controller: 'HomeController', controllerUrl: './js/controller/home' }) ); }); 

angularAMD.route 主要目的是去设置 require.js 中 resolve 去进行惰性加载 controller 以及 view,无论 你传入什么样的参数值进去,都会被返回。

这样访问 index.html#/home 就可以查看所做的修改了

相关链接

  • 项目地址:http://marcoslin.github.io/angularAMD/#/home
文章转载自 angularAMD使用RequireJS和AngularJS快速构建WebApp

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/260843.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ASP.NET MVC5 网站开发实践(二) Member区域 - 用户部分(2)用户登录、注销

上次实现了用户注册&#xff0c;这次来实现用户登录&#xff0c;用到IAuthenticationManager的SignOut、SignIn方法和基于声明的标识。最后修改用户注册代码实现注册成功后直接登录。 目录&#xff1a; ASP.NET MVC5 网站开发实践 - 概述 ASP.NET MVC5 网站开发实践(一) - 项目…

第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波2 - 图像反转、对数变换

目录一些基本的灰度变换函数图像反转对数变换一些基本的灰度变换函数 如下图显示了在图像处理中频繁使用的3类基本函数&#xff1a; 线性&#xff08;反转和恒等变换&#xff09;函数对数&#xff08;对数和反对数变换&#xff09;函数幂律&#xff08;nnn次幂和nnn次根变换&…

为Android应用程序添加社会化分享功能

正在做个android的小应用&#xff0c;有点想尝试一下社会化分享&#xff0c;比如分享到新浪微博啥的。看一下新浪&#xff0c;人人网的API&#xff0c;说实话功能很全很强大&#xff0c;但虽说有相对的SDK&#xff0c;但是总觉得不方便。因为正在使用友盟的统计SDK&#xff0c;…

安卓手机浏览器排行_安卓手机双11性价比排行发布|拯救者手机发透明版|小米发大光圈手机镜头...

智友新闻2020-11-05本期摘要&#xff1a;①安卓手机双11性价比排行榜发布②联想拯救者电竞手机 Pro 至尊透明版启动预约③小米发伸缩式大光圈镜头概念安卓手机双11性价比排行榜发布 安兔兔近日发布了安卓手机双11性价比排行榜。该榜单的统计维度为 2020年10月1日至10月31日。其…

jQuery随笔1-CDN加载

如果您不希望下载并存放 jQuery&#xff0c;那么也可以通过 CDN&#xff08;内容分发网络&#xff09; 引用它。 谷歌和微软的服务器都存有 jQuery 。 如需从谷歌或微软引用 jQuery&#xff0c;请使用以下代码之一&#xff1a; Google CDN: <head> <script src"h…

SQL Server 2008故障转移集群+数据库镜像配置实例之三

前两篇文章已经建立了SQL 2008 的故障转移集群&#xff0c;由于故障转移集群存在一个单点故障&#xff0c;既是当网络存储设备不可用时&#xff0c;整个集群就不可用了。所以为了获得更好的高可用特性和容灾机制&#xff0c;我们可以将集群中的某一特定SQL数据库配置一个镜像数…

第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波3 -幂律变换、伽马变换

目录幂律&#xff08;伽马&#xff09;变换幂律&#xff08;伽马&#xff09;变换 scrγ(3.5)s c r^{\gamma} \tag{3.5}scrγ(3.5) c和γc和\gammac和γ是正常数。考虑到偏移&#xff08;即输入为0时的一个可度量输出&#xff09;&#xff0c;可改写为sc(rϵ)γs c (r \epsi…

DBCP|C3P0参数详解

1.<!-- 数据源1 --> 2. <bean id"dataSource" 3. class"org.apache.commons.dbcp.BasicDataSource" 4. destroy-method"close"> 5. <property name"driverClassName" value"com.mysql.jdbc.Driver"/> 6. …

没有与参数列表匹配的 重载函数 strcpy_s 实例_Zemax光学设计实例(84)Ftheta扫描平场透镜的设计...

导论&#xff1a;F-theta透镜又叫激光扫描聚焦镜&#xff0c;是激光加工行业必不可少的光学元件之一。对于理想薄透镜&#xff0c;光束的偏转角度与轨迹位置的关系为YF*tan(θ)&#xff0c;这种非线性关系会使得匀速偏转的振镜扫描速度与轨迹运动速度是不匹配的&#xff0c;导致…

MongoDB学习笔记(一)--基础

Insert MongoDB在执行插入时&#xff0c;首先会将插入的数据转换成BSON格式。然后MongoDB数据库会对BSON进行解剖&#xff0c;并检查是否存在_id建。 >doc {"_id" : 1…

第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波4 - 分段线性变换 - 对比度拉伸

目录分段线性变换对比度拉伸最大最小值拉伸分段线性变换 优点 形式可以任意复杂 缺点 要求用户输入很多参数 对比度拉伸 光照不足、成像传感器的动态范围偏小、图像获取过程中镜头孔径的设置错误 点(r1,s1)和点(r2,s2)(r_1, s_1)和点(r_2, s_2)(r1​,s1​)和点(r2​,s2​…

2017网易内推编程题(判断单词):解答代码

2019独角兽企业重金招聘Python工程师标准>>> 小易喜欢的单词具有以下特性&#xff1a; 1.单词每个字母都是大写字母 2.单词没有连续相等的字母 3.单词没有形如“xyxy”(这里的x&#xff0c;y指的都是字母&#xff0c;并且可以相同)这样的子序列&#xff0c;子序列可…

Debian下IPv6设定主地址 Set primary IPv6 address under Debian Linux

Linux下选择IPv6主地址是按照一定规则来的 #RFC3484 (davidc) Prefer same address. (i.e. destination is local machine) Prefer appropriate scope. (i.e. smallest scope shared with the destination) Avoid deprecated addresses. Prefer home addresses.Prefer outgo…

iphone查看删除的短信_想要恢复已经删除的的短信怎么办?

阅读本文前&#xff0c;请您先点击上面的蓝色字体&#xff0c;再点击“关注”&#xff0c;这样您就可以继续免费收到文章了。每天都有分享&#xff0c;完全是免费订阅&#xff0c;请放心关注。 …

获取套接字相关联信息

前言 知道套接字描述符&#xff0c;如何获取这个套接字连接的相关信息呢&#xff1f;显然&#xff0c;这是一个必须要清楚的问题。 获取本地协议信息 函数原型&#xff1a;int getsockname ( int sockfd, struct sockaddr *localaddr, socklen_t *addrlen ) 函数功能&#xff1…

第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波5 - 分段线性变换 - 灰度级分层

目录灰度级分层灰度级分层 二值图像 将感兴趣范围内的所有灰显示为一个值&#xff08;白色&#xff09;&#xff0c;而将其它灰度值显示为另一个值&#xff08;黑色&#xff09; 其他灰度级不变 使期望的灰度范围变量&#xff08;或变暗&#xff09;&#xff0c;但保持图像中…

Oracle查看锁表

查看锁表进程SQL语句1&#xff1a; select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, lo.locked_mode from v$locked_object lo, dba_objects ao, v$session sess where ao.object_id lo.object_id and lo.session_id sess.sid; 查看锁…

SQL Server聚集索引的选择

先声明文章非原创&#xff0c;摘自博客园&#xff1a;http://www.cnblogs.com/CareySon/archive/2012/03/06/2381582.html 简介 在SQL Server中&#xff0c;数据是按页进行存放的。而为表加上聚集索引后&#xff0c;SQL Server对于数据的查找就是按照聚集索引的列作为关键字进行…

c++突破网关屏蔽_为什么加了屏蔽罩,测试效果反而不好?

来自专治PCB疑难杂症微信群群友(群友突破1200人啦&#xff0c;文末添加杨老师微信号&#xff0c;可添加入群)的问题讨论&#xff1a;设计时我加了屏蔽罩&#xff0c;结果在测试的时候不加屏蔽罩的效果要比加了屏蔽罩的效果好&#xff0c;这是为何&#xff1f;跟PCB设计的屏蔽罩…

第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波6 - 分段线性变换 - 比特平面分层

目录比特平面分层比特平面分层 在一幅256级灰度图像中&#xff0c;图像的值是由8比特&#xff08;1字节&#xff09;组成的 def convert_bin(data, n):"""convert decimal to binary, return n th bit, 0 if bit value 0 else 1""" #---------…