Jump to content
scorch

Criação de directives em AngularJS

Recommended Posts

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.

Share this post


Link to post
Share on other 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.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.