which service converts element and attr names in AngularJS?

All we need is an easy explanation of the problem, so here it is.

AngularJS converts element and attr names between HTML markup and JS, replacing dashes with camelCasing, i.e. ‘myComponent’ -> ‘my-component’ (and back). which AngularJS service or function does this?

thanks
-nikita

How to solve :

I know you bored from this bug, So we are here to help you! Take a deep breath and look at the explanation of your problem. We have many solutions to this problem, But we recommend you to use the first method because it is tested & true method that will 100% work for you.

Method 1

The actual function that does it is called camelCase() and it is found in jqLite.js which in turn is taken from jQuery.

The use of that function is in the compile stage in directiveNormalize()

update
The reverse is the function snake_case() in angular.js

Method 2

In the directive definition object has a link function with 3rd parameter for attribute. This has a method $normalize which can do what you want

function link(scope, element, attrs) { 
 attrs.$normalize("my-test") //return myTest
}

Note: Use and implement method 1 because this method fully tested our system.
Thank you 🙂

All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

Leave a Reply