分享下自己初识Angular.js1.x 遇到的报错以及常用命令

1.angularjs[ngRepeat:dupes]报错

在angular.js 中使用ng-repeat循环遍历数组的时候;数组中有重复想的时候回抛出这个错误[ngRepeat:dupes]错误;
结局方案:
在对应的ng-repeat指令中增加track by $index
例如:<p ng-repeat="item in ages track by $index"> {{item}} </p> 再循环之后添加track by $index

  1. angular中的标签编译$compile的使用

在angular中;如果想使用字符串或者模板字符串书写标签时 会遇到在页面中还是将标签原原本本的放在那里;这里需要将这个字符串编译;
解决方案:
使用$compile进行编译
例如: var str = <p><h1>我是标题</h1></p>;
var template = angular.element(str);
var html = $compile(template)($scope);
angular.element(父容器).append(html);

3.angular中的$watch的使用
用来帮助我们在每个scope中监视其中的变量;只要变量发生变化就执行的函数
例如:
单个变量:对于普通的变量时,如数字,字符串等,直接如下写是可以监视到变量的变化,并执行相应的函数的。
$scope.count=1;
$scope.$watch('count',function(){
...
})
多个变量:对于多个变量的监视变化,执行同一函数的话,可以将这几个变量转为字符串,以‘+’号隔开来进行监视
$scope.$watch('count + page',function(){
...
})

4.angular.bootstrap的使用
angular.bootstrap(element, [modules], [config]);此方法用于手动加载angularjs模板

参数名称参数类型描述elementDOMElementDOM元素modulesArray要加载的模板configObject配置选项的对象

5.angular中使用的路由angular-ui-router
app.config(["$stateProvider","$urlRouterProvider",function($stateProvider,$urlRouterProvider){
$urlRouterProvider.otherwise('/'); //路由重定向 错误的路由重定向到根目录
$stateProvider.state("all",{ //状态配置
url: '/',
templateUrl:'../tpl/all.html',
controller:'all'
}).state("detail",{
url:'/detail',
params:{"testID":null},
templateUrl:'../tpl/detail/detail.html',
controller:'detail'
}).state("ask",{
url:'/ask',
templateUrl:'../tpl/ask/ask.html',
controller:'ask'
})
}])

5.Error: [ng:areq]报错

这个报错是因为没有找到controller控制器,写一个正常的controller就正常了

评论 ( 0 )
最新评论
暂无评论

赶紧努力消灭 0 回复