Skip to content

Generated directive selector name should be camelcase #1216

Closed
@Blasz

Description

@Blasz
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.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions