second card总结

party_bid 第二张卡小结

1、第二张卡涉及到了短信收发,因此,做第二张卡的时候需要在工程中添加sms.js文件,通过sms.js来模拟短信的收发。

2、短信收发是通过活动在报名页面是否点击了“开始”按钮来决定的,因此,需要给“开始”按钮一个状态,因而我将状态存入到了存储器中:

var message = {'actname': $scope.activity, 'activity_status': 'false', 'apply_list': []};

 由于“开始”和“结束”按钮之间需要转换,需要在“报名”页面上写入“开始”和“结束”的转换方式,即通过ng-switch来进行状态变换:

<div class="header-right" ng-switch="switch">
           <button class="btn-style btn-4" ng-switch-when="true" ng-click="begin()" ng-disabled="start">开始</button>
           <a class="btn-style btn-4" ng-switch-when="false" ng-click="end()" >结束</a>

 3、点击“活动列表”页面中的活动会跳转到“报名页表”上,并且需要把点击的活动当作是当前激活的活动localStorage.working_activity:

$scope.bm = function (actname) {
            $location.path('/creat_active')
            localStorage.working_activity = actname;
        }

 通过存储活动与当前活动比较来实现开始状态,结束状态需要实现弹框形式的跳转,需要通过if和else实现对是否结束进行判定:

if(confirm("确认要结束此次报名吗?")){}
else{}

 

4、要求是实现页面中只有一个活动的报名开始状态为“true”,我所写的代码形式如下:

function judge_activity_start(){
            for(var b in active){
                if(active[b].activity_status == 'true'){
                    return true;
                }
            }
        }
        for(var a in active){
            if(active[a].actname==localStorage.working_activity) {
                if (!judge_activity_start()){
                    $scope.start = false
                }
                else {
                    $scope.start = true}
            }
        }

5、收发短信的前提是有唯一活动的“开始”按钮已经被点击,因而需要在解析,并存储之前添加判定活动是否开始:

if (active_life[i].activity_status == 'true') 

6、由于收发是通过短信的形式实现的,因而需要在sms.js中process_received_message()中,对短信实现解析的工作,解析的代码如下:

if (!message.search(/bm/i)) {
                    var my_name = message.substr(2).trim()
                    var my_phone = json_message.messages[0].phone
                    var my_array = {'name': my_name, 'phone': my_phone}

 7、需要对报名是否重复进行判定,通过如下判定实现对报名者回短信的内容,并决定是否进行存取,对于报名重复着,不予于存储,只有初次报名才能够进行存储:

if (json_message.messages[0].phone == active_life[i].apply_list[j].phone)
localStorage.setItem("messages", JSON.stringify(active_life))

 8、在使用send_sms()这个方法时,由于没有对其中变量native_access进行定义,因而会出现错误,所以需要进行定义:

var native_access;
$(document).ready(function(){
    native_access=new NativeAccess();
})

 定义完后需要调用native.js这一文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯智能台灯

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值