采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
想请教一下老师,
这里search.html中tab-click="tClick(id,name)" 传入的方法是两个参数id和name。
而在子级tab.js中调用$scope.tabClick(item)的时候,为什么是传入item这个值,而不是传入item.id和item.name。
我测试过,$scope.tabClick(item.id,item.name)是会报错的,而$scope.tabClick(item)就没有问题。
通过查看指令相关源码可以看出指令在执行回调函数的时候使用的是内置服务$parse 来解析的。而$parse需要传入json对象来绑定函数作用域,所以你那种传入方式会报错。
case '&': // Don't assign Object.prototype method to scope parentGet = attrs.hasOwnProperty(attrName) ? $parse(attrs[attrName]) : noop; // Don't assign noop to destination if expression is not valid if (parentGet === noop && optional) break; destination[scopeName] = function(locals) { return parentGet(scope, locals); }; break;
如果有兴趣可以看下 angular的源码关于$parse 的部分
非常感谢!
那请问老师,是不是当父级的方法里参数是(id,name),这样到了子级传入ajax的返回值的时候,需要传入json对象,这个对象需要有id和name属性。我的理解对吗?
嗯~~~~
登录后可查看更多问答,登录/注册
基于AngularJS,仿拉勾网开发一个招聘类的移动端单页应用
1.3k 16
970 10
984 9
1.0k 8
976 8