javascript - ¿Cómo evitar la colisión de alcance entre las directivas angularjs?
He creado una directiva simple, llamada match que se usa como:
<input match='pattern' />
La línea de declaración de mi directiva es:
app.directive('match', function () {
return {
restrict: 'A',
require: 'ngModel',
scope: {
pattern: '=match'
},
link: function (scope, element, attributes, ngModel) {
// doing stuff here
}
};
});
Sin embargo, después de un tiempo quise usar BootstrapUI para angularjs, y tan pronto como comencé a usar el componente de escritura anticipada, encontraron un problema al usar el mismo alcance:
Múltiples directivas [match, uibTypeaheadMatch] solicitando un alcance nuevo/aislado en
Necesito emparejar y escribir juntos enuna página. La escritura anticipada no está bajo mi control y no quiero cambiar el nombre de la coincidencia.
¿Qué puedo hacer para evitar su colisión?
------------Respuesta------------
El problema es que tanto su directiva como la directiva de escritura anticipada solicitan un alcance aislado en el mismo elemento y angular no lo permite.
Para superar este problema, defina la directiva de una manera diferente:
app.directive('match', function () {
return {
restrict: 'A',
require: 'ngModel',
link: function (scope, element, attributes, ngModel) {
var match = attributes.match;
//do your stuff
}
};
});
Etiquetas: javascript angularjs
Artículos relacionados:
php - mysql_field_name() espera que el parámetro 1 sea un recurso,
ios: el menú emergente en formato horizontal ocupa toda la pantalla
- Código VBA para convertir pies a decimal
- Error: el salto o movimiento condicional depende del valor no inicializado - C valgrind
- javascript - Cómo enviar un mensaje con WebSocket a un servidor Socket.io
- android - código de actualización php mysql
- c++ - Saltar código después de ingresar un valor y salir del programa
- mysql - ¿Cómo obtener el valor entero máximo de una columna en java sql?
- java - ¿Cómo debo validar los parámetros dependientes en @requestparam en Spring Rest API?
- bibliotecas compartidas: compilación de varios archivos .jar con la clase .java
- android - UnsupportedOperationException: addView (View) no es compatible con AdapterView
- python: error al derivar texto árabe en un archivo usando ISRIStemmer
- w3.css - Cambia el ancho de la entrada animada en w3 css
- c++ - detecta los dedos en la mano
- c# - Error de Techtalk.Specflow: no se pudo cargar el archivo de ensamblaje o el ensamblaje
- html: el botón de envío del formulario no funciona
- reactjs - Cómo usar el operador de incremento en React
Artículos calientes
- medicina china para la bronquitis
- Diferencia entre infección de las vías respiratorias superiores y bronquitis
- ¿Qué causa la epididimitis?
- Criterios diagnósticos de cálculos renales
- ¿Qué medicamento la masturbación causa prostatitis?
- ¿Cuáles son los factores de padecer gota?
- Qué comer durante la convalecencia de una hemorragia cerebral
- que es el alzheimer
- Principales criterios diagnósticos de las bronquiectasias
- ¿Cuáles son las formas de prevenir y tratar la menstruación irregular en las mujeres?
- Síntomas de gota de ternera
- Saco gestacional de 5x4mm cuanto dura el embarazo
- La diferencia entre espinillas y espinillas de ácaros
- Por qué frotar con jengibre puede tratar la caída del cabello
- ¿Cuánto tiempo se puede vivir con insuficiencia hepática?