发表于: 2017-01-12 23:55:13

1 1273


今天完成的事情:

#个人页的静态布局
#时间选择器的查找,图片上传缩略图插件的查找,了解

明天计划的事情:

#学习服务和指令
#重构代码的数据源部分,做成一个服务来存储数据

遇到的问题:

#搜索功能做不出来,数据操作存在问题,在获取到数据的步骤就需要想要这个功能是怎样的,这样比较容易把数据引导去想要的地方,经过排查,以目前掌握的知识并不能够做出这个事情,而还没怎么接触就剩下指令,服务,这几个大件没有去碰,所以问题就出在这上面,选择搭建出来的东西看似已经实现了某一部件的功能,但其实有很多不通的地方,原因就出在数据源头上,对于数据如何存储,以及操作这个数据还是再次拉取接口数据。这个问题上没有思考清楚,以及在实现存储数据的技术上,并没有掌握。导致了,数据无法存储后,进行操作渲染,以及操作过后,当下拉菜单跳转成全部的时候,被过滤的数据会展示出来,这3个功能的无法实现

收获:

#二师兄分享了,写代码里面的技巧,渐进增强,和逐级递减。这样规范代码的一个概念。我给他32个赞

#沁姐教了一个不用在使用本机IP的方法,来加载页面获取接口数据:
步骤如下
1:修改电脑hosts,添加一行:127.0.0.1    local.test.zrq.com
2:修改nginx的conf配置文件,对其进行粘贴复制以下代码
 server {
            listen 80;
            //地址和hosts里面的一样,配置完记得把我删了
            //其中,
            server_name     local.test.zrq.com;
            root            //你的html文件地址,配置完记得把我删了;
            location / {
                    index index.html index.htm;
            }
            location /student-ajax/{
                proxy_pass  http://115.29.203.53:10013/;
                proxy_set_header        Host            $host;
                proxy_set_header        X-Real-IP       $remote_addr;
                proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
            }
        }
上面2步过后,重启nginx,更新配置,然后在浏览器输入local.test.zrq.com/你的html文件地址就可以访问了,就不用每天查自己的Ip了

我猜(见我写不出任务8原型搜索按钮功能),沁姐非常好心的写了一个数据源的流动代码出来让我借鉴

var app = angular.module('app', []);

//获取地址

app.constant('URL', {

    studentList: '/student-ajax/students'

});

//一个服务,用于获取接口里面的数据

app.service('studentService', function($http, URL) {

    this.getStudentList = function() {

        return $http.get(URL.studentList);

    };

});

//一个最简单的指令,

app.directive('pages', function() {

    return {

        //把数据输出到html

        restrict: 'EA',

        template: '<div>' +

        '<p ng-if="scope.req">请求中...</p>' +

        '<p ng-if="!scope.req">请求结束</p>' +

        '<p>总条数{{total}} 如果每页10条 那么总页数为{{totalPage}}</p></div>',

        replace: true,

        //进行双向绑定

        scope: {

            list: '='

        },

        //link方法传入scope,??

        link: function(scope) {

            //把scope的list属性

            scope.list.then(function(res) {

                //新建一个变量来存res的个数

                scope.total = res.length;

                //

                scope.totalPage = Math.ceil(scope.total / 10);

            })

        }

    }

});

//建立一控制器,并且调用服务

app.controller('PageCtrl', function(studentService) {

    //新建一个变量等于this

    var vm = this;

    //变量下面的list属性等于服务的

    vm.list = studentService.getStudentList().then(function(res) {

        //判断返回成功否

        if (res.data.code == 200) {

            //成功就把接口的值给res

            return res.data.data;

        } else {

            //不成功就返回空数组

            return [];

        }

    })

});

然而上面这段代码的核心部分我还没有了解透彻。


返回列表 返回列表
评论

    分享到