发表于: 2017-01-24 01:56:19

3 1352


今天完成的事情:

1.继续任务八。

2.继续angularjs基础知识的学习,主要涉及自定义指令和模块化。

3.写了一个基于自定义指令构建的下拉提示组件。

遇到的问题:

1.构建E类型指令:指令名称里面出现了大小写,结果指令不能正常执行。保险起见以后都用小写。驼峰样式的写法也不行。后来貌似想明白了。html标签对于大小写是不予以区分的。

收获:

1.关于哈希值:

1.#是用来指导浏览器动作的,对服务器端完全无用。所以,HTTP请求中不包括#。

2.单单改变#后的部分,浏览器只会滚动到相应位置,不会重新加载网页。

3.每一次改变#后的部分,都会在浏览器的访问历史中增加一个记录,使用"后退"按钮,就可以回到上一个位置。

4.window.location.hash这个属性可读可写。读取时,可以用来判断网页状态是否改变;写入时,则会在不重载网页的前提下,创造一条访问历史记录。

关于模块化:

1.最简单的模块使用

定义模块:

var mod=angular.module(名称, [依赖模块]);

引用模块:

ng-app="名称"

2.向模块中添加东西

mod.controller(名称, function);

mod.filter(名称, function);

mod.directive(名称, function);

3.Controller继承

子Controller使用父Controller中的数据(父子关系体现在HTML中)

二:

1.Controller

适合:数据的获取、整理、过滤

不适合:任何表现层功能

2.Filter

适合:简单的文本、数据输出前处理

不适合:数据交互、任何复杂的功能

3.Directive

适合:表现层的功能组件

不适合:数据相关操作

4.Module

组件,一个组件可以包含很多Controller、Filter和Directive;而一个程序又可以包含很多组件



返回列表 返回列表
评论

    分享到