Repository navigation
Description
Please provide us with the following information:
- OS? Windows 7, 8 or 10. Linux (which distribution). Mac OSX (Yosemite? El Capitan?)
Windows 10
- Versions. Please run
ng --version. If there's nothing outputted, please run
in a Terminal:node --versionand paste the result here:
angular-cli: 1.0.0-beta.11-webpack.2
node: 5.10.1
os: win32 x64
- Repro steps. Was this an app that wasn't created using the CLI? What change did you
do on your code? etc.
change to a directory, for example, /app/components, then run
ng g component new-component
- The log given by the failure. Normally this include a stack trace and some
more information.
installing component
create src\app\new-component\new-component.component.css
create src\app\new-component\new-component.component.html
create src\app\new-component\new-component.component.spec.ts
create src\app\new-component\new-component.component.ts
create src\app\new-component\index.ts
create src\app\new-component\shared\index.ts
- Mention any other details that might be useful.
The documentation states:
"# if in the directory src/app/feature/ and you run"
ng g component new-cmp
"# your component will be generated in src/app/feature/new-cmp"
so the results should have been this:
installing component
create src\app\components\new-component\new-component.component.css
create src\app\components\new-component\new-component.component.html
create src\app\components\new-component\new-component.component.spec.ts
create src\app\components\new-component\new-component.component.ts
create src\app\components\new-component\index.ts
create src\app\components\new-component\shared\index.ts
Thanks! We'll be in touch soon.
Activity
filipesilva commentedon Aug 18, 2016
@Brocco can you have a look?
Brocco commentedon Aug 22, 2016
I believe this is a product of the move of the
sourceDirproperty within angular-cli.json from underdefaultsinto theappsproperty and renamed toroot.@Phatsuo can you please verify your app's angular-cli.json configuration?
Phatsuo commentedon Aug 23, 2016
AFAIK, I am just using the default configuration.
I tried changing is as you seem to suggest:
That resulted in an error.
Phatsuo commentedon Aug 23, 2016
I see - related to #1633.
Phatsuo commentedon Sep 20, 2016
OK, #1633 is closed, and as of Beta 15, this is still an issue, even with a brand new project.
My angular-cli.json:
I have discovered a workaround. The following commands do allow the creation of new entities in the directory of choice. Perhaps just the documentation is incorrect at this point.
$ ng g component components//my-new-component-9installing component
create src\app\components\my-new-component-9\my-new-component-9.component.css
create src\app\components\my-new-component-9\my-new-component-9.component.html
create src\app\components\my-new-component-9\my-new-component-9.component.spec.ts
create src\app\components\my-new-component-9\my-new-component-9.component.ts
$ ng g service services//my-new-service-3installing service
create src\app\services\my-new-service-3.service.spec.ts
create src\app\services\my-new-service-3.service.ts
WARNING Service is generated but not provided, it must be provided to be used
The only slight problem being in app.module.ts the path ends up as (note the backslash after 'components'):
import { MyNewComponent9Component } from './components\my-new-component-9/my-new-component-9.component';and it has to be changed to:
import { MyNewComponent9Component } from './components/my-new-component-9/my-new-component-9.component';Brocco commentedon Oct 8, 2016
You should be defining the path to your components with the appropriate path separator:
\on Windows/on POSIXso in your case @Phatsuo instead of:
ng g component components//my-new-component-9you will want to do:
ng g component components\my-new-component-9Closing this issue as I believe all is working, if not comment here and we can re-open and investigate further.
Phatsuo commentedon Oct 10, 2016
I am on Windows, but using GitBash. This appears to be part of the problem. Sorry I did not specify that before. As of Beta 17, I have retested - everything works as documented from a DOS prompt.
From GitBash, specifying the path with a forward slash now works properly.
But the original problem I reported in this issue is still present - when generating from a subdirectory, the subdirectory is ignored. (again works fine from DOS, just not from GitBash).
whiskeysauer commentedon Jan 2, 2017
I am working through some tutorials and have discovered this as well when using GitBash. From a sub-folder of the "app" folder, I tried to create a component but it simply ended up in the "app" folder. The fact that I created the component from the sub-folder was ignored.
fix(generate): normalize pwd before using it
fix(generate): normalize pwd before using it (#4065)
MarkWilsoncom commentedon Jan 31, 2017
Same with cygwin - annoying...
fix(generate): normalize pwd before using it (angular#4065)
angular-automatic-lock-bot commentedon Sep 6, 2019
This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.
Read more about our automatic conversation locking policy.
This action has been performed automatically by a bot.
fix(generate): normalize pwd before using it (angular#4065)