前面必须说一段

帮客户做了一个过渡期的项目,唯一的要求就是速度,我只是会点儿基础的php,于是就用tp帮客户做了这个项目。最近和客户架构沟通,后期想把项目重新做一下,就用现在最流行的技术,暂时想的使用angular做前端框架,为了后期还能继续兼职参与。于是就学习了一下。
前端的东西好多,更新的速度好快,百度搜了一下angular,出来的技术博文都是好多,又不清楚使用的angular的版本,不过看日期就知道自己学习晚了。不过不得不提到大漠穷秋老师的教程不错,正在学习的同学的可以去看看他的教程。

demo都是从简单的开始

概念我都还没彻底搞懂,虽然断断续续还是学习了有段时间了,我就不说概念性的东西,免得说错了,误人子弟。


界面就是这么简单,我的初衷是做一个可以分享我的微博收藏的简单demo,做到最后还是做不下去了,做到这里就暂时先记录一下自己做的过程中遇见的问题,已经自己学习到的,后面争取还是完善完善。

用到的知识

  1. route
  2. controller
  3. service
    ……
  • 写了几个模板页面
  • 写了一个控制器文件
  • 写了一个服务文件(这个做到这里应该这个都用不着,不过这里也感受了一下这个文件具体是个什么)
    ……

项目结构


1.angular项目初始化文件,路由配置-app.js
项目一运行就来到了这个文件的位置,在ng-view标签位置引入对应的模板文件,这里只是用了angular的路由,可以学习一下UI-Router:Nested Routing for AngularJS。
2.控制器文件controller
这里创建了一个weiboCtrls模块,一个控制器是login,一个控制器是favorite;使用的微博开放平台的接口来实现的登录操作,由于使用的sae,直接就有对应的php的库,于是在other中引入了几个php文件。
3.服务文件service
这个文件本来是放置公共调用的,目前只是放了一个分页程序,http请求,习惯了ajax的方式,这里知道了有一个同步请求,异步请求,不过前段时间写过一个随便jquery-ajax-async之浏览器差异 ,http只有异步请求,不要把ajax的async设置true,false那一套拿过来尝试,我是尝试过的,所以我知道不行,你就不要再试了,所以这里的代码写的很乱,思绪都没有了。
分页,获取收藏的微博的时候,会返回一个总收藏数,通过这个来实现前端的分页,每页显示五个页码数。

1.第一页 1 2 3 4 5
2.第二页 1 2 3 4 5
3.第三页 1 2 3 4 5
4.第四页 2 3 4 5 6
……

通常分页应该都是这么操作的,这里的代码写的也不是很好,改天还要重新写过,之前有写过一个感觉较好的,但是后来版本丢失了。
综上来看没有用到什么实际的知识,也没有涉及到指令什么的,离我原想做成的demo还有很长的一段距离,不过今天已经48天了,还没有什么好转,按照正常的情况来看可能也就只有这样了。说实话挺害怕这个结果的,压力挺大,以赚钱的项目为主,业余学习项目为辅,不过不学习是不行的。你看看大家都在玩什么react啊什么的了,等你玩的时候又只能看几年前的教程了,等到2.0来了,或许有些规则已经又变化了,而你还一成不变。
接下来你可能就会听到“unofficial, out!”。

angular实现了一个简单demo,angular-weibo-favorites的更多相关文章

  1. 构建一个简单的Angular工程

    1.创建一个空的工程,之后用webstorm打开,添加一个bower.json文件: { "name": "AngularTpl", "depende ...

  2. 在cengos中安装zabbix server/agent, 并创建一个简单demo

    添加zabbix更新源 rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch ...

  3. Log4net - 项目使用的一个简单Demo

    参考页面: http://www.yuanjiaocheng.net/entity/entitytypes.html http://www.yuanjiaocheng.net/entity/entit ...

  4. 关于EF的一个简单Demo

       今天使用EF的时候很奇怪的问题,添加属性后,使用程序包管理器控制台的NuGet命令更新无效,于是做了这个测试,一次性写好,自动更新,看看效果 1.首先建立一个MVC项目 2.我们选择Intern ...

  5. Android中调用C++函数的一个简单Demo

    这里我不想多解释什么,对于什么JNI和NDK的相关内容大家自己去百度或谷歌.我对Android的学习也只是个新手.废话少说直接进入正题. 一.在Eclipse中创建一个Android Applicat ...

  6. 用redis来实现Session保存的一个简单Demo

    现在很多项目都用Redis(RedisSessionStateProvider)来保存Session数据,但是最近遇到一个比较典型的情况,需要把用户数据全部load到redis里面,在加上RedisS ...

  7. gin框架初识(先跑一个简单demo) ①

    Gin 是一个 go 写的 web 框架,具有高性能的优点.官方地址:https://github.com/gin-gonic/gin 先跑一个demo(先安装gin框架,具体见官方地址): 1.vs ...

  8. 【转】用Pthread创建线程的一个简单Demo

    一.我们直接在COCOS2D-X自带的HelloWorld工程中添加代码.首先将Pthread的文件包含进来包括lib文件.在HelloWorld.cpp中引入头文件和库. #include &quo ...

  9. COCOS2D-X之圆形进度条的一个简单Demo

    这应该是游戏中很常见的一个效果.显示某个事件的进度等,在加载资源或者联网的时候经常用到.所以有必要学习学习 一.我们直接在COCOS2D-X自带的HelloCpp的工程中添加代码即可.我们在初始化中添 ...

随机推荐

  1. java代码调用oracle存储过程

    一.简介 与调用mysql存储过程类型过程都是如下 1.创建连接 Connection conn = DriverManager.getConnection(url, user, password); ...

  2. java微信接口之四—上传素材

    一.微信上传素材接口简介 1.请求:该请求是使用post提交地址为: https://api.weixin.qq.com/cgi-bin/media/uploadnews?access_token=A ...

  3. python中列表和元组以及字符串的操作

    python中列表是非常好用的.不过有一些使用小细节还需要注意一下. tag[32:-4] 从index为32到tag的倒数第4个字符. 如果索引为32的值在倒数第4个字符的右边,那么将输出为空.只要 ...

  4. Storm之spout,bolt编写

    Storm,核心代码使用clojure书写,实用程序使用python开发,使用java开发拓扑. Nimbus节点接收到请求,对提交的拓扑进行分片,分成一个个的task,并将task和supervis ...

  5. Hive history date mapping

    Hive history table mapping create table fdl_family as select * from (select 'acc1' as account,'famil ...

  6. ext3,ext4,xfs和btrfs文件系统性能对比

    应为原文:http://www.ilsistemista.net/index.php/linux-a-unix/6-linux-filesystems-benchmarked-ext3-vs-ext4 ...

  7. 《TCP/IP详解 卷一》读书笔记-----TCP persist &Keeplive timer

    1.persist timer:当接收方建议的窗口大小为0时,发送方就会停止发送,直到接收方有缓存空间时再用一个窗口值非零的ACK提示发送方可以继续发送.但是这个称为window update的ACK ...

  8. 深入理解UIApplication和ios程序启动过程

    在深入理解UIApplication前我们先了解ios程序的启动过程: UIApplication类在ios里面为app的管理和协调提供一个集中的点,每一个app有一个UIApplication的实例 ...

  9. codeforces 721B B. Passwords(贪心)

    题目链接: B. Passwords time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  10. HDU 4460 Friend Chains --BFS

    题意:问给定的一张图中,相距最远的两个点的距离为多少.解法:跟求树的直径差不多,从1 开始bfs,得到一个最远的点,然后再从该点bfs一遍,得到的最长距离即为答案. 代码: #include < ...