ctrl.js
在控制器中,如果用户登录编辑页面,则值为true
var self = this;
self.edit = "true"
HTML
在添加页面时,它应该是
<md-input-container flex="25">
<label>GameId</label>
<input name="games" ng-model="ctrl.game" ng-required="true" ng-maxlength="50" custome-directive-to-check-unique-value >
</md-input-container>
在编辑页面上,它应该是
<md-input-container flex="25">
<label>GameId</label>
<input name="games" ng-model="ctrl.game" ng-required="true" ng-maxlength="50" disabled>
</md-input-container>
对于禁用,我可以使用ng-disabled=ctrl.edit
禁用输入字段,如何执行指令custome-directive-to-check-unique-value
答案 0 :(得分:2)
您只需根据值使用属性ng-show
或ng-hide
。
<div ng-hide="edit">Edit is False</div>
<div ng-show="edit">Edit is True</div>
如果edit为true,那么ng-show将为true,显示消息Edit is True
答案 1 :(得分:1)
您可以使用两个输入字段,并使用ng-if
根据bool值显示其中一个字段,该值指定是添加视图还是编辑视图。
<input ng-if="!ctrl.edit" name="games" ng-model="ctrl.game" ng-required="true" ng-maxlength="50" custome-directive-to-check-unique-value >
<input ng-if="ctrl.edit" name="games" ng-model="ctrl.game" ng-required="true" ng-maxlength="50" disabled>
答案 2 :(得分:0)
您可以使用ng-disabled
指令来禁用或启用输入文字,但我已经看到您已经这样做了。
ctrl.edit
值检查您需要做什么。执行此操作只需将输入文本中的ctrl.edit
传递给您的指令,如下所示:
<强> HTML 强>
<input name="games" ng-model="ctrl.game" ng-required="true" ng-maxlength="50" custome-directive-to-check-unique-value myFlag = "ctrl.edit">
<强>指令强>
.directive('customeDirectiveToCheckUniqueValue', function () {
return {
restrict: 'AE',
scope:{
myFlag :'='
},
link: function (scope, element, attrs) {
//here make your condition and add your code accordingly
if(myFlag){
//if true your code
}else{
//if false your code
}
}
};
})
希望有所帮助,祝你好运。