angular实现了一个简单demo,angular-weibo-favorites
前面必须说一段
帮客户做了一个过渡期的项目,唯一的要求就是速度,我只是会点儿基础的php,于是就用tp帮客户做了这个项目。最近和客户架构沟通,后期想把项目重新做一下,就用现在最流行的技术,暂时想的使用angular做前端框架,为了后期还能继续兼职参与。于是就学习了一下。
前端的东西好多,更新的速度好快,百度搜了一下angular,出来的技术博文都是好多,又不清楚使用的angular的版本,不过看日期就知道自己学习晚了。不过不得不提到大漠穷秋老师的教程不错,正在学习的同学的可以去看看他的教程。
demo都是从简单的开始
概念我都还没彻底搞懂,虽然断断续续还是学习了有段时间了,我就不说概念性的东西,免得说错了,误人子弟。


界面就是这么简单,我的初衷是做一个可以分享我的微博收藏的简单demo,做到最后还是做不下去了,做到这里就暂时先记录一下自己做的过程中遇见的问题,已经自己学习到的,后面争取还是完善完善。
用到的知识
- route
- controller
- 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的更多相关文章
- 构建一个简单的Angular工程
1.创建一个空的工程,之后用webstorm打开,添加一个bower.json文件: { "name": "AngularTpl", "depende ...
- 在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 ...
- Log4net - 项目使用的一个简单Demo
参考页面: http://www.yuanjiaocheng.net/entity/entitytypes.html http://www.yuanjiaocheng.net/entity/entit ...
- 关于EF的一个简单Demo
今天使用EF的时候很奇怪的问题,添加属性后,使用程序包管理器控制台的NuGet命令更新无效,于是做了这个测试,一次性写好,自动更新,看看效果 1.首先建立一个MVC项目 2.我们选择Intern ...
- Android中调用C++函数的一个简单Demo
这里我不想多解释什么,对于什么JNI和NDK的相关内容大家自己去百度或谷歌.我对Android的学习也只是个新手.废话少说直接进入正题. 一.在Eclipse中创建一个Android Applicat ...
- 用redis来实现Session保存的一个简单Demo
现在很多项目都用Redis(RedisSessionStateProvider)来保存Session数据,但是最近遇到一个比较典型的情况,需要把用户数据全部load到redis里面,在加上RedisS ...
- gin框架初识(先跑一个简单demo) ①
Gin 是一个 go 写的 web 框架,具有高性能的优点.官方地址:https://github.com/gin-gonic/gin 先跑一个demo(先安装gin框架,具体见官方地址): 1.vs ...
- 【转】用Pthread创建线程的一个简单Demo
一.我们直接在COCOS2D-X自带的HelloWorld工程中添加代码.首先将Pthread的文件包含进来包括lib文件.在HelloWorld.cpp中引入头文件和库. #include &quo ...
- COCOS2D-X之圆形进度条的一个简单Demo
这应该是游戏中很常见的一个效果.显示某个事件的进度等,在加载资源或者联网的时候经常用到.所以有必要学习学习 一.我们直接在COCOS2D-X自带的HelloCpp的工程中添加代码即可.我们在初始化中添 ...
随机推荐
- 关于Math类的round、floor、ceil三个方法
一.Math类这三个方法的简介 1.round():取最接近的值. 对于这个方法,查看源代码,其实现如下: public static long round(double a) { if (a != ...
- 第三篇 :微信公众平台开发实战Java版之请求消息,响应消息以及事件消息类的封装
微信服务器和第三方服务器之间究竟是通过什么方式进行对话的? 下面,我们先看下图: 其实我们可以简单的理解: (1)首先,用户向微信服务器发送消息: (2)微信服务器接收到用户的消息处理之后,通过开发者 ...
- 续Gulp使用入门三步压缩CSS
gulp 压缩css 一.安装 gulp-minify-css 模块 提示:你需要使用命令行的 cd 切换到对应目录后进行安装操作. 在命令行输入 npm install gulp-minify-cs ...
- JavaScript生成GUID的算法
全局唯一标识符(GUID,Globally Unique Identifier)也称作 UUID(Universally Unique IDentifier) . GUID是一种由算法生成的二进制长度 ...
- javascript之url转义escape()、encodeURI()和encodeURIComponent()
JavaScript中有三个可以对字符串编码的函数,分别是: escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decod ...
- (四) openwrt单个ipk编译过程
Tags : Makefile 本周是成胖子每周一博的第五周. 更好的阅读体验,请点击这里 [TOC] 前言 前一篇博客中,我们已经知道整个openwrt的编译顺序,本文我们来探讨与开发者息息相关的单 ...
- 记一次hadoop datanode进程问题分析
症状:datanode进程还在,但是在web ui接口发现该节点已经被置为dead节点.监测datanode进程日志,开始时一直狂刷很忙,后来停止刷新日志. 分析datanode进程日志,发现如下一些 ...
- linux command intro2 vi
vi cusor : 0 : to the beginning of the current line $ : to the end of the current line G : to the la ...
- 多人操作sqlite3数据库冲突问题解决方法
问题描述:sqlite3数据放置在某一台电脑的某个共享文件夹下,操作数据库的应用程序安装在同一局域网下的很多台电脑上,由于存在多人同时使用该应用程序,所以存在多人同时操作数据库的情况.经过测试发现,最 ...
- 双向广搜 codevs 3060 抓住那头奶牛
codevs 3060 抓住那头奶牛 USACO 时间限制: 1 s 空间限制: 16000 KB 题目等级 : 黄金 Gold 题目描述 Description 农夫约翰被告知一头逃跑奶牛 ...