我使用约曼角生成器创建了一个新项目,然后我修改了一些扩展以适应我自己的需求。然而后来我意识到我喜欢用mean。IO express和mongodb支持。我花了不少时间从平均值中复制必要的部分。IO默认项目到我自己的项目。然而,我仍然面临着grunt-rev和grunt-usemin的严重问题。
原来的yeoman生成的项目有一个app/文件夹,里面包含了所有AngularJS的项目。但是,新项目有app/folder用于服务器中存在的所有项目,然后public/folder用于客户端所需的所有项目。现在grunt-rev插件重命名css和图像文件,以包含一些与该项的版本匹配的标识符。我认为这是非常有用的,所以我想保持它在我的项目。现在;我的index.html位于app/文件夹和所有的CSS和图像都在公共/文件夹。在我的index.html中,我得到了"<img src="images/imagename.png">
"格式的图像。当我通过启动节点快车服务器测试项目时,这是有效的,因为它提供了应用程序/视图/和公共/来自同一位置的服务器根。然而,Usemin不理解这一点,因为图像源与绝对文件夹结构不匹配。我试图移动应用程序/视图/内容到应用程序/,但无济于事。使用cssmin构建的css文件也是如此。在index。html中有属性,下面是css。在构建之后,我在那里得到了styles/main.css,但由于usemin没有意识到文件夹结构,我最终在index.html中得到了styles/main.css,在styles/.
有没有办法让usemin知道两个文件夹应该像一个文件夹一样处理?我发现你可以强迫usemin寻找特定的模式,但这会迫使我记住将每个图像单独添加到gruntfile中,所以我宁愿在我这样做之前根本不使用这些插件。
终于找到了Generator Angular Fullstack,它做了我需要的一切,甚至更多。它正确地处理从src->.tmp->dist复制文件,并在此过程中完成所有必要的使用魔法。非常棒的工具!