楼主终于把party_bid的第二张卡片做完了,也学到了不少java script的知识,也对对象有了一点点了解。这做第二张卡片的时候发现数据存储的结构很重要,由于做第一张卡片的时候数据存的结构不够好,没有理解MVC模式,在做第二张卡片的时候就感觉很难做下去,后来在仝老师的指点下,对代码进行了一次重构,使用了MVC结构,也认真的学习了一下JSON。下面讲一下关于第二张卡片的程序。
1.数据结构
我使用的结构比较直接,我将活动名称、报名者的名字以及手机都存成了数组,将活动的状态分成了尚未开始,开始以及结束三种。首先对短信内容进行判断时候格式正确,如果正确则继续判断手机号码是否重复,如果没有就将姓名和手机号码存在各自的数组里。但是后来学习到对象这个概念的时候,就突然发现这种数据结构不够好,可以存成对象,直接调用对象里面的属性,这里可以再继续改动一下。
2.正在进行的活动背景色是黄色
在这里要自己也一个CSS出来。注意这里要使用!important,强调优先级,避免被其他颜色盖住。同时我在这里写了个函数,调出每个活动当前的状态,通过函数的返回值判断是否使用CSS中的状态。
- .start{
- background: #ffff00 !important;
- }
3.传参数
这个是WEB开发中重要的部分,因为之前不会传,就只能将提取的数据存到localStorage中,然后在其他页面读取后立即删除,,还好后来学会了传参数的方法,解决了很多问题。可以讲活动的名称作为参数传到另一个页面中,以备其他操作。在一个URL中可以跟多个参数,每个参数之间用“/"隔开。要在路由中首先配置要跳转页面的参数,接着在locationPath中加上参数,在想要提取的页面中使用$routeParams调用,详细内容见下面代码。这里要注意的是,如果决定某个页面要跟参数,那就要保证只要跳转到该页面就要有参数传过来,不然是没有办法跳转到这个页面的。
route中:
- .when('/activity_sign_up/:activity_name/:status', {
- templateUrl: 'views/activity_sign_up.html',
- controller: 'ActivitySignUpController'
- })
对应的controller中,注意要引用$routeParams
- var activity_name = $routeParams.activity_name;
- var status = $routeParams.status;
4.收到短信后自动刷新
这个我觉得还是很难的。用到了回调函数还有$apply。
- sign_up_scope.$apply(function () {
- sign_up_scope.initiate();
- })
initiate()函数是在controller中写的,主要是实现读取相应的姓名和电话号码。
5.接受短信并且自动回复
这个是使用了一个sms.js文件。在电脑上利用console模拟收发短信,后来利用cordova打包的时候要做一些配置之后就可以在手机上实现自动回复短信的功能。
- //notify_message_received({"messages":[{"create_date":"Tue Jan 15 15:28:44 格林尼治标准时间+0800 2013","message":"bm仝键","phone":"18733171780"}]})
- //notify_message_received({"messages":[{"create_date":"Tue Jan 15 15:28:44 格林尼治标准时间+0800 2013","message":"jj308","phone":"18733171780"}]})
- var native_accessor = {
- send_sms: function (phone, message) {
- // native_access.send_sms({"receivers":[{"name":'name', "phone":phone}]}, {"message_content":message});
- console.log(phone, message);
- },
- receive_message: function (json_message) {
- if (typeof this.process_received_message === 'function') {
- this.process_received_message(json_message);
- }
- },
- process_received_message: function (json_message) {
- //自己填写部分
- };
- function notify_message_received(message_json) {
- //console.log(JSON.stringify(message_json));
- //JSON.stringify(message_json);
- //alert(JSON.stringify(message_json.messages));
- native_accessor.receive_message(message_json);
- //phone_number=message_json.messages[0].phone;
- }
在浏览器的console中输入sms.js中的前两行内容就可以模拟短信收发。
相关推荐
2. **创建第一个AngularJS应用**:通过一个简单的“Hello World”示例,读者可以快速了解AngularJS的基本工作原理,并熟悉其核心概念。 3. **深入理解AngularJS的核心特性**:这部分内容将详细介绍数据绑定、依赖...
2. **数据绑定(Data Binding)**: 数据绑定是AngularJS的核心特性,允许双向通信,即视图和模型之间的自动同步。例如,`{{expression}}`用于在HTML中展示模型数据。 3. **依赖注入(Dependency Injection)**: ...
AngularJS的数据绑定是其核心特性之一,它允许视图(View)和模型(Model)之间的双向通信。在AngularJS中,我们可以使用`{{ }}`双括号语法将模型数据直接展示在视图上,同时,当模型数据发生变化时,视图也会实时...
本分卷由2345好压(Haozip)生成,请使用2345好压来解压。 ...分卷文件共有以下2个: AngularJS即学即用 (美)夏德瑞 格林 译者 朱磊.haozip01.zip AngularJS即学即用 (美)夏德瑞 格林 译者 朱磊.haozip02.zip
2. **环境搭建**:安装Node.js和AngularJS库,创建第一个"Hello, World!"应用。 3. **指令探索**:深入学习各种内置和自定义指令的用法,实践构建动态UI。 4. **数据绑定**:通过实例了解如何实现双向数据绑定,并...
AngularJS是google在维护,其在国外已经十分火热,可是国内的使用情况却有不小的差距,参考文献/网络文章也...这里便将我学习AngularJS写成文档,一方面作为自己学习路程上的记录,另一方面也给有兴趣的同学一些参考。
1. **双向数据绑定**:AngularJS 的核心特性之一是双向数据绑定,它使得模型(model)和视图(view)之间的数据保持同步。任何一方的改变都会立即反映到另一方,大大简化了开发者的工作。 2. **指令系统**:AngularJS ...
在开始AngularJS的学习之旅时,首先需要理解以下几个核心概念: 1. **数据绑定**:AngularJS 的双向数据绑定是其最具特色的功能之一。这意味着视图(View)和模型(Model)之间的数据会自动保持同步。例如,当你在...
AngularJS最初版本于2010年发布,随着时间的发展,Google推出了AngularJS的后续版本——Angular 2+,并逐步将其重命名为Angular。尽管如此,AngularJS仍然是许多大型项目的首选框架之一,拥有庞大的社区支持和丰富的...
1. 数据绑定:这是AngularJS最显著的特性之一,它实现了视图和模型之间的双向绑定,使得UI和数据模型同步更新。 2. 指令:AngularJS通过自定义HTML标签或属性扩展了HTML,这些自定义的元素称为指令,如ng-repeat、ng...
AngularJS,是由Google维护的JavaScript框架,用于构建交互式的单页应用(SPA)。它通过数据绑定和依赖注入等核心特性,极大地简化了前端开发工作。本资料包是针对AngularJS的学习资源集合,主要包括AngularJS的中文...
AngularJS 是一款强大的前端JavaScript框架,由Google维护,主要用于构建单页应用(SPA,Single ..."Hello World"只是AngularJS之旅的第一步,随着学习的深入,你会发现它能帮助你构建出功能强大、响应迅速的Web应用。
AngularJS 是一个 JavaScript框架。它是一个以 JavaScript 编写的库。它可通过 [removed] 标签添加到HTML 页面。 AngularJS 通过 指令 扩展了 HTML,且通过 表达式 绑定数据到 HTML。 AngularJS 是以一个 JavaScript...
本篇文章将深入探讨如何使用AngularJS来构建名为"MovieCat"的前端网页,以及与之相关的JavaScript开发和CSS技术。 一、AngularJS简介 AngularJS是由Google维护的开源JavaScript框架,它通过MVC(Model-View-...
├最新AngularJS开发宝典—第012讲 函数使用方法大小写转换与对象深拷贝.mp4 ├最新AngularJS开发宝典—第013讲 函数使用对象扩充与数据遍历.mp4 ├最新AngularJS开发宝典—第014讲 json数据转换与本地存储及$scope...
第2章 构建与测试 2.1 介绍示例应用 熟悉问题领域 技术栈 持久化存储 MongoLab 服务器端环境 第三方JavaScript库 BootstrapCSS 2.2 构建系统 构建系统准则 自动化所有事情 尽早...
angularjs学习需要导入的angular.js
**数据绑定**是AngularJS的核心功能之一,它使得视图和模型之间的同步变得自动化。双向数据绑定使得当模型改变时,视图会自动更新,反之亦然。在AngularJS中,我们使用`ng-model`指令将表单元素与应用模型关联,从而...
AngularJS的核心理念之一就是模块化,它允许我们将应用拆分为多个可重用的模块,每个模块负责特定的功能。`ngModule`指令用于定义模块,通过`.module()`方法创建。模块可以包含控制器、服务、指令、过滤器等组件,...