Description
Version
$ ng --version
(node:20286) fs: re-evaluating native module sources is not supported. If you are using the graceful-fs module, please update it to a more recent version.
Could not start watchman; falling back to NodeWatcher for file system events.
Visit http://ember-cli.com/user-guide/#watchman for more info.
angular-cli: 1.0.0-beta.6
node: 6.2.1
os: linux x64
Repro steps
The following generate command produces a kebab case selector name instead of camelCase.
$ ng g directive shared/directives/wrap-if
(node:20210) fs: re-evaluating native module sources is not supported. If you are using the graceful-fs module, please update it to a more recent version.
Could not start watchman; falling back to NodeWatcher for file system events.
Visit http://ember-cli.com/user-guide/#watchman for more info.
installing directive
create src/app/shared/directives/wrap-if.directive.spec.ts
create src/app/shared/directives/wrap-if.directive.ts
src/app/shared/directives/wrap-if.directive.ts
import { Directive } from '@angular/core';
@Directive({
selector: '[wrap-if]'
})
export class WrapIf {
constructor() {}
}
As per the styleguide,
Do Use lower camel case for naming the selectors of our directives.
I've passed ng generate
the name in kebab case because the README states so and follows the convention of passing the file name where file names should use dashes to separate words in the descriptive name.
I've read #424 and acknowledge that passing the name as camelCase to ng generate
produces the correct selector but it is unintuitive and doesn't follow the README. I don't think we should make an exception to the convention of passing kebab case file names to ng generate
.
Instead of not modifying the selector name at all for directives, I think they should be modified to be camelCase as per the styleguide.