Open m0t0r opened 9 years ago
I'll try to get in here on the weekend. For this moment, if you're following:
.jscs
(make sure you properly setup jscs)you are good to go.
But for the moment some directive do not follow John Papa's style guide. Do we need to refactor them?
What do you think of...
The file need to have the name of the directive suffixed by directive
.
e.g. sm-accordion.directive.js
Your file need to contain only one directive! Your boilerplate need also to follow IIFE syntax and use use strict
like below.
(function() {
'use strict';
//
})();
All of your function need to be named and you need to create them after the return statement. You also need to create nested function if necessary
(function() {
'use strict';
angular
.module('app.widgets')
.directive('smAccordion', smAccordion); // Named function
function smAccordion() {
var directive = {
restrict: 'E',
replace: true,
transclude: true,
template: template, // Named function
link: link // Named function
};
return directive; // Return statement
function link(scope, element, attrs, ctrl, transclude) {
transclude(scope, transcludeFn); // Nested named function
function transcludeFn(nodes) {
// Transclude stuff
}
}
function template() {
return '';
}
}
})();
The first expression of the link
function should be transclude
if it exists like the example above.
After that you need to have all var's definitions and after all bindings to an element.
function link(scope, element, attrs, ctrl, transclude) {
transclude(scope, transcludeFn);
// Var's declarations
var active = attrs.active || false;
// Bindings
element.on('click', toggle);
// Functions
function toggle() {
// Toogle stuff
}
function transcludeFn(nodes) {
// Transclude stuff
}
}
@m0t0r @caitp Please when you get a chance send me an email at jack@semantic-ui.com.
I'm hoping to send off a kickoff email to organize all the people interested in getting involved in this project and I don't have your e-mails.
I totaly agree to use John Papa's styleguide. :+1:
+1
As we are thinking of using angular 1.4 with ES6 is legal research on things like: https://github.com/johnpapa/angular-styleguide/issues/390
Further to documentation and contribution guide, we should also chat about approach and goals of the project.
@kowsheek its a good scene. My intention was to create a first release with some references as: angular-bootstrap, angular material, but we need to discuss where to go.
Few thoughts I would like to share:
I think it could be a good idea to follow John Papa's style guide https://github.com/johnpapa/angular-styleguide