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 相关文章推荐
javascript 控制 html元素 显示/隐藏实现代码
Sep 01 Javascript
基于JQuery的Pager分页器实现代码
Jul 17 Javascript
javascript onmouseout 解决办法
Jul 17 Javascript
javascript nextSibling 与 getNextElement(node) 使用介绍
Oct 13 Javascript
基于jquery库的tab新形式使用
Nov 16 Javascript
javascript中SetInterval与setTimeout的定时器用法
Aug 24 Javascript
React数据传递之组件内部通信的方法
Dec 31 Javascript
js构建二叉树进行数值数组的去重与优化详解
Mar 26 Javascript
微信小程序制作表格的方法
Feb 14 Javascript
微信小程序实现搜索框功能及踩过的坑
Jun 19 Javascript
如何在selenium中使用js实现定位
Aug 18 Javascript
Nuxt.js的路由跳转操作(页面跳转nuxt-link)
Nov 06 Javascript
模仿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
检测codeigniter脚本消耗内存情况的方法
2015/03/21 PHP
php生成图片验证码的实例讲解
2015/08/03 PHP
Yii清理缓存的方法
2016/01/06 PHP
PHP设计模式之原型模式定义与用法详解
2018/04/03 PHP
thinkPHP框架实现的短信接口验证码功能示例
2018/06/20 PHP
dotopAlert 提示用户需安装播放器的代码
2012/09/17 Javascript
js将控件隐藏及display属性的使用介绍
2013/12/30 Javascript
jQuery取id有.的值的方法
2014/05/21 Javascript
jQuery源码分析之jQuery中的循环技巧详解
2014/09/06 Javascript
基于BootStrap Metronic开发框架经验小结【八】框架功能总体界面介绍
2016/05/12 Javascript
对象转换为原始值的实现方法
2016/06/06 Javascript
利用js定义一个导航条菜单
2017/03/14 Javascript
原生js二级联动效果
2017/06/20 Javascript
JavaScript通过mouseover()实现图片变大效果的示例
2017/12/20 Javascript
简单的三步vuex入门
2018/05/20 Javascript
实例详解ztree在vue项目中使用并且带有搜索功能
2018/08/24 Javascript
jQuery实现图片随机切换、抽奖功能(实例代码)
2019/10/23 jQuery
微信小程序实现二维码签到考勤系统
2020/01/16 Javascript
Vue 组件的挂载与父子组件的传值实例
2020/09/02 Javascript
python根据经纬度计算距离示例
2014/02/16 Python
Python中splitlines()方法的使用简介
2015/05/20 Python
详解pyppeteer(python版puppeteer)基本使用
2019/06/12 Python
python 通过手机号识别出对应的微信性别(实例代码)
2019/12/22 Python
详解python算法常用技巧与内置库
2020/10/17 Python
Python实现曲线拟合的最小二乘法
2021/02/19 Python
HTML5之web workers_动力节点Java学院整理
2017/07/17 HTML / CSS
h5使用canvas画布实现手势解锁
2019/01/04 HTML / CSS
HTML+CSS+JavaScript实现图片3D展览的示例代码
2020/10/12 HTML / CSS
英国领先的电视购物零售商:Ideal World
2019/03/18 全球购物
碧欧泉Biotherm加拿大官方网站:法国高端护肤品牌
2019/10/18 全球购物
七年级音乐教学反思
2014/01/26 职场文书
贯彻落实“八项规定”思想汇报
2014/09/13 职场文书
沈阳故宫导游词
2015/01/31 职场文书
2015年组织部工作总结
2015/04/03 职场文书
就业指导讲座心得体会
2016/01/15 职场文书
用Python selenium实现淘宝抢单机器人
2021/06/18 Python