在确信学习和使用Angular.js后,我将启动一个具体的Web UI应用程序,以启动经验学习轮。 (该应用程序将是一些个人计划,列表,提醒,番茄钟技术导向,等等...)
One of the tutorial videos I have seen, by the author of Angular, is about best practices.其中一个最佳做法是从angular-seed
项目开始。
这就是我要做的事情,但在谷歌搜索之后,已经有至少两个其他项目声称是一个很好的起点:
angular-enterprise-seed
angular-sprout
我是初学者,但我喜欢长期投资。我应该担心使用angular-seed
之外的其他内容吗?我觉得现在问这个问题还为时过早,但如果已经有两个其他项目,也许有一些很好的理由。
答案 0 :(得分:60)
我发现虽然很多人使用各种种子项目,但最简单的方法是角度应用(或任何javascript网络应用)的最一致起点是Yeoman。
这个应用程序是一个脚手架工具,允许您指定构建应用程序内核的生成器,完成您想要的任何库(通过bower)和工作grunt构建文件(大多数生成器都有库存任务,用于实时编辑的服务器任务和测试任务)
虽然像这样的应用程序必然是固执己见的,但它产生的脚手架仍然非常通用。
示例:
mkdir my-app
cd my-app
npm install generator-angular
npm install generator-karma
yo angular
答案 1 :(得分:26)
他们都有不同的优点,所以这取决于你想要做什么。我写了angular-enterprise-seed并且可以说出它的相对优点。
这是与服务器无关的。这很重要,因为AngularJS的核心原则,也是使其具有吸引力的众多因素之一,它遵循客户端MVC范例。这意味着它完全与任何和所有服务器技术分离。许多现有种子将AngularJS与服务器技术联系起来,例如angular-sprout(NodeJS)或grilled-feta(Google App Engine / Java)。对于上述项目,如果NodeJS和/或Java环境尚未在您的系统上,那么您将不得不经历几个环节才能看到种子出现。这可能会疏远PHP和Python开发人员,从而限制了项目的社区。 p>
在几秒钟内启动并运行。因为它与服务器无关,所以它可以在任何容器中运行(就此而言文件系统)。建议的方法是从根目录运行“python -m SimpleHTTPServer” - 这在Mac和Linux上是原生的,因此没有其他步骤。
实时预览。检查项目状态很便宜,因为实时版本始终是on github。因为它与服务器无关,所以通过将master从cron作业复制到gh-pages分支来自动完成。
丰富的样式。它包括Twitter Bootstrap和自定义/可构建的LESS,以及Angular-UI,Angular-NG,字体和众多其他工具丰富的造型和响应能力。
小部件。像Angular-Seed和Angular-Sprout一样,Angular-Enterprise-Seed例证了“最佳实践”布局,路由等。但它也提供了一系列预构建可以从货架上取下并立即重复使用的组件。这有点难以做到,因为它可能需要几种技术的融合。例如,为了创建网格示例,我结合了angular-ui,angular-ng,angular-js和jquery样式。有模态,分页,警报,网格等组件示例。
如果你想学习这些作品是如何工作的话,角形种子作为一种学术练习是很棒的,但它会让你渴望更大的跳跃点。
我没有使用过角芽,所以我不能说出它的优点。也许有一些空间来合并角芽和角企业种子?
答案 2 :(得分:18)
我认识到这是一个较老的问题,但似乎有相当多的观点,因此有必要推荐最近成为Yeoman和angular-seed的非常受欢迎的替代方案:ng-boilerplate 。 ng-boilerplate与angular-seed的不同之处在于它是为大型生产网络应用程序而设计的,因此在我看来,它比angular-seed更好。
为了解释应用程序启动的Yeoman和ng-boilerplate方法之间的差异,我引用了ngbp的创建者Josh D. Miller:
Josh在Yeoman角度发生器问题论坛上发表了{p> This is also pretty good discussion,关于ng-boilerplate与yeoman的设置更加深入。Yeoman太棒了。但是我对AngularJS的生成器的问题在于它们是逐层而不是按功能打包的。如果我们将所有控制器存储在"控制器"文件夹和"服务中的所有服务"文件夹等,以及我们在其他地方的所有测试,重用我们的组件可能非常具有挑战性。
答案 3 :(得分:11)
要明确的是,Yeoman不是发电机。 Yeoman是制作发电机的格式/系统。使用Yeoman制作的几个生成器可用于生成AngularJS应用程序。人们经常错误地将他们中的一个或另一个称为“Yeoman”发电机。但是有很多。困惑了吗? Yeoman不是唯一的发电机制造系统。早午餐是另一个。
要回答您的问题,here是一个非常全面的并排比较许多AngularJS生成器,可以用来开始使用AngularJS创建Web应用程序。目前,它包含这些东西的200多个不同方面。其中之一是文件组织风格。因此,如果这对您来说很重要,您可以轻松查看哪些文件按功能组织。对我来说。
还有一些还有待补充。这个帖子中提到的两个对我来说都是新的。但是,这种比较应该让您对选项及其比较方式有所了解。它也是可编辑的,所以如果你们中的任何一个都是这些东西的专家,请随意分享你所知道的。
上帝只知道为什么人们会继续制造越来越多这些东西,而不仅仅是帮助改善现有的东西。如果您有任何猜测,我很乐意解开这个谜团。
编辑:要获得对文档的访问权限,我要求您填写调查问卷以分享您对某事物的知识,或者游说专家这样做。到这里做问卷调查: http://www.dancancro.com/technology-questionnaires/
答案 4 :(得分:9)
我也喜欢使用Yeoman。试试这些来获得一个好的脚手架:
npm install -g generator-angular # install generator
yo angular # scaffold out a AngularJS project
bower install angular-ui # install a dependency for your project from Bower
grunt test # test your app
grunt server # preview your app
grunt # build the application for deployment