我对Angular指令有疑问。以下是我的代码:自定义/条件操作的角度指令
主控制器&的指令:
<div ng-controller='ShopsController'>
<update-createform shop="shop" action='update()'></update-createform>
</div>
指令JS: (这样的方向作用将采取 '动作' 输入参数)
angular.module('app')
.directive('updateCreateform', function(){
return {
templateUrl: '/form.html',
restrict : 'E',
scope: {
shop: '=',
action: '&'
}
}
})
形式.html模板:
<form name="shopForm" ng-submit='action(shopForm.$valid)' novalidate>
<input type='text' name='name' required/>
<input type='text' name='description' required/>
</form>
ShopsContr奥勒有一个方法:
exports.update = function(isValid) {
if (isValid) { /* update the shop*/ }
}
什么我做的是我传递的店铺数据我从服务器获取,发送到表单,因此我可以查看和/或更新店铺信息。
这也是我想使用相同的形式创建店铺信息。在这种情况下,我只需发送shop = []和action ='create()'。
我的控制器有一个采用参数isValid的更新方法。我不知道如何通过指令shopForm。$有效的外部并将其发送到服务器。
两个问题:
- 我如何才能的IsValid变量从指示?
- 继阿里·勒纳的NG-书:他说,这是可能做到以下几点:
http://www.scribd.com/doc/215682987/NG-Book-The-Complete-Book-on-AngularJS-2013
,而不是上面我们使用
<update-createform shop="shop" on-update='update()' on-create='create()'></update-createform>
,并指令“动作”使用指令当店铺不空时,将更改为“更新”,否则操作等同于“创建”?我试过他的代码,但我不能得到它的工作..
任何帮助将不胜感激!
它应该是'<更新店的CreateForm = “店” 行动='exports.update() “>更新的CreateForm>'?您是否尝试过使用指令的链接函数并使用console.log来查看正在传入的“动作”? – james 2014-11-14 18:07:52