3

当我yeoman init angular:all用来引导我的应用程序时,yeoman 使用我从中调用它的目录的名称作为主应用程序 .js 文件的名称。即,如果我在 中运行命令/Users/myusername/dev/projects/my-angular-app,则该文件app/scripts/my-angular-app.js将创建为应用程序的主 .js 文件。

如果我只是重命名根目录,那么使用 Yeoman 添加路由将不起作用,因为它无法再找到它创建的 .js 文件。在调用 Yeoman init 命令时,我尝试将应用程序的名称添加为参数,但这不起作用。

我尝试在具有我希望应用程序具有的名称的目录中执行 init 命令,然后重命名该目录。但似乎 Yeoman 每次调用时都会读取该目录的名称,因此在更改目录名称后,Yeoman 不再能够为我创建路由,因为它找不到与该目录同名的 .js 文件根目录。

如何让 Yeoman 为 my-angular-app.js 文件使用不同的名称?

4

3 回答 3

3

有一张关于它的公开,请在那里权衡你的想法。

于 2012-11-08T16:01:53.477 回答
0

我不确定这是否可行,但您可能想查看 Gruntfile.js 并替换配置中的所有实例(如果它存储旧路径并用新路径替换它)。我不确定这是否会起作用,因为我从未尝试过,但这可能基于我对 Grunt 的理解。

我和你一样,我喜欢以我想要的方式命名事物,这为什么我不使用 Yeoman,即使我很愿意(就像他们说的,这是固执己见,对我来说太固执己见),我有一些习惯构建了 grunt 任务,为我提供了我需要的大部分功能(主要是 SASS/TypeScript 的自动编译、缩小 CSS/JS 和连接 CSS/JS 文件)。

于 2012-11-02T20:05:07.867 回答
0

问题在于生成器角度。

目前,应用名称取自 bower component.json文件。如果您使用更新的命名此文件bower.json的约定,则应用程序名称将回退到目录名称。

将bower.json重命名为component.json,直到对新命名方案的支持使其成为 generator-angular。

看起来这些更改已经完成但尚未合并到主分支中: renaming-deprecated-component_json

于 2013-05-30T21:43:41.877 回答