Angular 指令 - 需要 ngModel 和 form^
Angular Directive - require ngModel AND form^
在 angular 指令中,您可以要求 form^ AND ngModel 吗?是否可以在链接功能中访问表单和控制器?
angular.module('myApp')
.directive('passwordValidation', passwordValidation)
function passwordValidation(){
return {
replace: true,
require: 'ngModel', // also 'form^' ?
scope: {
userName: '@'
},
link: function(scope, elem, attr, ctrl, form) {
...
是的,可以通过在 require 属性 中提供一个数组来实现。使用它,您将获得控制器数组作为 link 函数中的第 4 个参数。
angular.module('myApp')
.directive('passwordValidation', passwordValidation)
function passwordValidation(){
return {
replace: true,
require: ['ngModel','^form'], // also 'form^' ?
scope: {
userName: '@'
},
link: function(scope, elem, attr, controllers) {
var ngModelCtrl = controllers[0],formCtrl = controllers[1];
}
}}
在 angular 指令中,您可以要求 form^ AND ngModel 吗?是否可以在链接功能中访问表单和控制器?
angular.module('myApp')
.directive('passwordValidation', passwordValidation)
function passwordValidation(){
return {
replace: true,
require: 'ngModel', // also 'form^' ?
scope: {
userName: '@'
},
link: function(scope, elem, attr, ctrl, form) {
...
是的,可以通过在 require 属性 中提供一个数组来实现。使用它,您将获得控制器数组作为 link 函数中的第 4 个参数。
angular.module('myApp')
.directive('passwordValidation', passwordValidation)
function passwordValidation(){
return {
replace: true,
require: ['ngModel','^form'], // also 'form^' ?
scope: {
userName: '@'
},
link: function(scope, elem, attr, controllers) {
var ngModelCtrl = controllers[0],formCtrl = controllers[1];
}
}}