Ir para o conteúdo
scorch

Criação de directives em AngularJS

Mensagens Recomendadas

scorch

Estou a usar AngularJS num projecto meu, e queria experimentar a criação de directives. Já segui vários tutoriais, e não consigo ver onde estou a errar. Isto pois ele não dá erro nenhum, mas também não me executa a função da directive. Para já, tenho +/- este código:

angular.module('components', []).directive('ngxOnshow', function() {
  return {
  restrict: 'A',
  link: function(scope, element, attrs){
		console.log("hello world")
		//Resto do código da função
  }  
  };
});
var module = angular.module('app', ['components']);

E na página HTML tenho isto no body:

<body ng-autobind ng-app="app">

Mas quando uso a directive, não funciona:

<div ng-show="showApp == true" ngx-onshow="showAppBar()">
</div>

Todo o resto da aplicação funciona bem, os bindings do AngularJS, tudo. Mas a directive criadas por mim não funcionam. Será que me estou a esquecer de alguma coisa? :confused:

Cumprimentos,

Scorch :)


scorch_pp.png

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
scorch

E eu declaro:

ngx-onshow="showAppBar()"

O AngularJS transforma os nomes de CamelCase para SnakeCase, ou seja, as maiusculas passam a minusculas e são antecedidas por um hífen. E eu crio-a com o nome:

directive('ngxOnshow', function() {

A menos que me tenha escapado alguma coisa, acho que o problema não é do nome. :)


scorch_pp.png

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.