AngularJS 遇到的小坑与技巧小结


Posted in Javascript onJune 07, 2016

1. templateURL和路由之类的要在web server下运行。

2. 使用模板replace设为true,模板里也要有相应的标签,否则不出现任何数据。

3. 1.2版本之后,ngRoute模块独立。

4.空的controller不定义会出错。

5.Directive的link参数是有顺序的:scope,element,attrs,ctrl

6.ng-repeat不能循环重复的对象。hack: ng-repeat="thing in things track by $id($index)"

7.尽量更新的是变量的属性而不是单个变量本身。

8.注意ng-repeat,ng-controller等会产生独立作用域。

9.当jquery载入,则使用jquery,否则使用内置jqlite。all element references in Angular are always wrapped with jQuery or jqLite; they are never raw DOM references.

10.Uncaught Error: [$location:ihshprfx]  A标签没有去掉 <a href="#" ng-click="someMethod();"></a>

11.Error: listen EACCES 当在linux下,会出现这个错误,因为你监听的端口的原因,这里我的是33。把它改成8080或3030之类大的端口数就可以了。有一个规定,这些端口最好是大于1024。

12. select在没有ng-model的时候,无法显示。同理,当遇到无法显示最好看文档少了什么。

补:当ng-options的源,跟书写不相配时会出现全部选择的情况,如下:

var a = [{"id":1,"name":"Ryan"}....] ,ng-options="item.i as item.name for item in a"  // i与id不同

----------------------------------------------------------------------------------------

13.ng-bind-html-unsafe已去除,可以用['ngSanitize'] 模块或使用$sce服务

From stackoverflow

You indicated that you're using Angular 1.2.0... as one of the other comments indicated, ng-bind-html-unsafe has been deprecated.

Instead, you'll want to do something like this:

<div ng-bind-html="preview_data.preview.embed.htmlSafe"></div>

In your controller, inject the $sce service, and mark the HTML as "trusted":

myApp.controller('myCtrl', ['$scope', '$sce', function($scope, $sce) {

  // ...

  $scope.preview_data.preview.embed.htmlSafe = 

     $sce.trustAsHtml(preview_data.preview.embed.html);

}

Note that you'll want to be using 1.2.0-rc3 or newer. (They fixed a bug in rc3 that prevented "watchers" from working properly on trusted HTML.)

查看更多AngularJS的语法,大家可以关注:AngularJS 参考手册英文版,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Prototype使用指南之hash.js
Jan 10 Javascript
JQuery动画和停止动画实例代码
Mar 01 Javascript
js 动态为textbox添加下拉框数据源的方法
Apr 24 Javascript
JSON字符串和对象之间的转换详解
May 26 Javascript
JavaScript中的原始值和复杂值
Jan 07 Javascript
设置点击文本框或图片弹出日历控件的实现代码
May 12 Javascript
微信JS-SDK坐标位置如何转换为百度地图坐标
Jul 04 Javascript
JavaScript字符串对象
Jan 14 Javascript
JS和jQuery通过this获取html标签中的属性值(实例代码)
Sep 11 jQuery
AngularJS 实现购物车全选反选功能
Oct 24 Javascript
用Angular实现一个扫雷的游戏示例
May 15 Javascript
vue本地构建热更新卡顿的问题“75 advanced module optimization”完美解决方案
Aug 05 Vue.js
模仿password输入框的实现代码
Jun 07 #Javascript
无缝滚动的简单实现代码(推荐)
Jun 07 #Javascript
Bootstrap学习笔记之css样式设计(2)
Jun 07 #Javascript
AngularJS 如何在控制台进行错误调试
Jun 07 #Javascript
JQuery异步加载PartialView的方法
Jun 07 #Javascript
基于JS实现无缝滚动思路及代码分享
Jun 07 #Javascript
Bootstrap学习笔记之css样式设计(1)
Jun 07 #Javascript
You might like
phpinfo 系统查看参数函数代码
2009/06/05 PHP
php实现用户登陆简单实例
2017/04/04 PHP
基于prototype扩展的JavaScript常用函数库
2010/11/30 Javascript
js注意img图片的onerror事件的分析
2011/01/01 Javascript
基于JQuery实现的类似购物商城的购物车
2011/12/06 Javascript
js实现单一html页面两套css切换代码
2013/04/11 Javascript
JQuery boxy插件在IE中边角图片不显示问题的解决
2015/05/20 Javascript
jquery实现红色竖向多级向右展开的导航菜单效果
2015/08/31 Javascript
JavaScript如何调试有哪些建议和技巧附五款有用的调试工具
2015/10/28 Javascript
使用JavaScript和CSS实现文本隔行换色的方法
2015/11/04 Javascript
js事件冒泡与事件捕获详解
2017/02/20 Javascript
如何使用Bootstrap 按钮实例详解
2017/03/29 Javascript
layui框架中layer父子页面交互的方法分析
2017/11/15 Javascript
node.JS路径解析之PATH模块使用方法详解
2020/02/06 Javascript
Node登录权限验证token验证实现的方法示例
2020/05/25 Javascript
[00:30]塑造者的传承礼包-戴泽“暗影之焰”套装展示视频
2014/04/04 DOTA
[01:17:47]TNC vs VGJ.S 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python类的定义、继承及类对象使用方法简明教程
2015/05/08 Python
Python实现Windows和Linux之间互相传输文件(文件夹)的方法
2017/05/08 Python
Tensorflow之构建自己的图片数据集TFrecords的方法
2018/02/07 Python
ubuntu安装mysql pycharm sublime
2018/02/20 Python
DES加密解密算法之python实现版(图文并茂)
2018/12/06 Python
详解Python的循环结构知识点
2019/05/20 Python
从python读取sql的实例方法
2020/07/21 Python
视光学毕业生自荐书范文
2014/02/13 职场文书
保护环境标语
2014/06/09 职场文书
业绩倒数第一的检讨书
2014/09/24 职场文书
如何签定毕业生就业协议书
2014/09/28 职场文书
2015教师节师德演讲稿
2015/03/19 职场文书
2015小学毕业班工作总结
2015/07/21 职场文书
班主任经验交流心得体会
2015/11/02 职场文书
创业项目(超低成本创业项目)
2019/08/16 职场文书
导游词之临安白水涧
2019/11/05 职场文书
python tkinter实现定时关机
2021/04/21 Python
OpenCV-Python实现油画效果的实例
2021/06/08 Python
Python实现批量自动整理文件
2022/03/16 Python