发表于: 2017-02-10 23:13:44

4 1274


一、今天完成的事情:

1.就写了写了一个轮播图,碰到了很多坑,下面为一一描述;


二、明天要做的事情:

1.完成找工作页面的用户搜索


三、遇到的问题:

1.我们轮播图使用了btui的轮播插件,这个轮播插件里面涉及到数据的一个silid这个变量,这个变量是不能更改的,所以,如果存在一个页面有多个轮播的情况,那么就需要它每个轮播都有一个独立的作用域,所以就只剩下一个方法,使用指令来让他们有各自独立的作用域!在使用指令的时候要特别注意,使用templateUlr的时候,需要在最上面加上一个div,这样才能隔开,不然你的指令就写进了你的div里面,会产生冲突!


2.了解了指令是如何和外面交互的,使用=可以和父作用域中的controller进行双向绑定,用@是单向绑定,即将父级的传入,指令里面改变父controller里面的不会改变,使用&可以绑定父作用域里面的方法。


3.我在从服务器获取的值的时候,想将取到的1这些数字改变为对应的字符串,这里我想到了用filter,用了两次for循环,过程很曲折,第一次没有注入,注入后发现没有取到对应的值,最后找到了原因,我的name变量和服务器上取到的name冲突了,直接取到服务器上的name中的值,这里我学会了[""+name]的方法来处理对象传入值,这里有必要贴一下代码:

var mainFil = angular.module("mainFil",[]);
       /*转化公司信息里的数字为文字*/
   mainFil.filter('reachIndustry',function () {
       return function (industry1data,name) {
           var industryLength = industry1data.length;
           for (var i = 0; i < industryLength; i++) {
               if (name=='industryList') {
                   var namelength = industry1data[i][''+name].length;
                   for (var j = 0; j<namelength;j++) {
                       switch (industry1data[i][''+name][j]) {
                           case 0 :
                               industry1data[i][''+name].splice(j,1,"移动互联网");
                               break;
                           case 1 :
                               industry1data[i][''+name].splice(j,1,"电子商务");
                               break;
                           case 2 :
                               industry1data[i][''+name].splice(j,1,"企业服务");
                               break;
                           case 3 :
                               industry1data[i][''+name].splice(j,1,"O2O");
                               break;
                           case 4 :
                               industry1data[i][''+name].splice(j,1,"教育");
                               break;
                           case 5 :
                               industry1data[i][''+name].splice(j,1,"金融");
                               break;
                           case 6 :
                               industry1data[i][''+name].splice(j,1,"游戏");
                               break;
                       }
                   }
               }
           }
           return industry1data;
       }

可以看到我这里面用了swich方法,来改变它每次的值,第一次for循环确定每一个object的位置,第二次for循环确定object里面name变量属性所在的位置,写入name变量的原因是,我以后有可能会传入其他值来进行判断,这样我就只需要改值和增加if就行了,为了复用性考虑;


虽然写代码的感觉很爽,但是感觉自己快爆炸了,好多东西都不会,好多东西都要学,果然菜鸡就是菜。。很难受,只有好好学好好做了。


返回列表 返回列表
评论

    分享到