首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AngularJS + sails.js

AngularJS + sails.js
EN

Stack Overflow用户
提问于 2014-02-21 15:45:53
回答 5查看 24.7K关注 0票数 50

我正在开发一个应用程序,可以利用sails.js的后端和AngularJS的前端。我想我将使用约曼角生成器https://github.com/yeoman/generator-angular创建一个角应用程序,一旦我完成了前端逻辑,我将使用

  1. npm安装-g帆
  2. sails新应用程序

然后,我将把所有的AngularJS文件传输到Sails文件夹中。

但是问题是,AngularJS创建了一个类似于这个https://github.com/rishy/angular-jade-stylus-seed的文件夹层次结构,并且在运行"grunt server“时创建了一个包含最终生产版本的"dist”文件夹。

另一方面,在"sails“之后,sails应用程序的文件夹层次结构类似。

  • api
    • 适配器/
    • 管制员/
    • 模型/
    • 政策/
    • 服务/

  • 资产
    • 图像/
    • 联合材料/
    • 风格/风格
    • favicon.ico
    • robots.txt

  • 配置/
  • 节点模块/
  • 视图
    • 家/
    • 403.ejs
    • 404.ejs
    • 500.ejs
    • layout.ejs

  • Gruntfile.js
  • app.js
  • package.JSON

所以,我的问题是:

  1. 现在,我如何将我的角文件传输到这个sails目录,我应该如何构造它?
  2. 既然sails使用“sailsJs”来启动服务器,而角使用"grunt server",那么我应该使用哪一个来启动我的水手is + AngularJS应用程序的服务器,那么在AngularJs之后创建的"dist“文件夹呢?
  3. 我必须在Gruntfile.js中做什么更改,因为它现在应该包含来自角和帆的代码?
  4. 我应该在哪里保存我的不同视图和风格的文件,我应该如何访问这些形式角或从帆?

我认为很多人都面临着类似的问题,因为AngularJS和SailsJ目前都很流行。应该有一个强大的样板来创建一个AngularJS + SailsJS应用程序,遗憾的是,这个应用程序现在就不见了。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2014-02-22 08:25:07

因为Sails是一个纯粹的后端框架和角度是纯粹的前端,他们可以很好地合作。当您将角度生成器引入其中时,它可能会变得有点混乱,但是如果您要从角质种子应用程序和Sailsv0.10开始,下面是一些基本步骤:

  1. 使用sails new myApp创建新的Sails应用程序
  2. 删除myApp/assets文件夹的内容
  3. 将角种子app文件夹的内容复制到myApp/assets
  4. myapp/views/layout.ejs的内容替换为角种子app/index.html文件的内容
  5. layout.ejs文件中剪切所有非脚本标记内容( <body>标记之后和第一个<script>标记之前的所有内容),并使用它替换myApp/views/homepage.ejs的内容。
  6. <%-body%>放在<body>标记后的layout.ejs

然后,您可以使用sails lift启动服务器,并在http://localhost:1337上看到该应用程序。

我有把这个放在吉特布身上作为参考。

使用这种方法,您不需要对Gruntfile做任何事情,而且永远也不会调用grunt server--这完全是为了用它们的测试服务器测试角形应用程序,您要用Sails替换它。您仍然将受益于Sails咕噜同步任务,它监视和同步您的前端资产,因为它们被更改。

如果你真的想要使用约曼角度生成器,你可以尝试生成一个应用程序直接进入你的帆应用程序的assets文件夹,并使用在该文件夹中的生成器命令。我以前没有使用过它,所以我不知道dist文件夹是用来做什么的,但是它安装的所有节点模块似乎都是为了支持测试web服务器(因为您有Sails)和测试套件(它总是很好)。我看到的唯一问题是,您是否需要由Yeoman生成的Gruntfile中的一些任务。Sails处理较少的编译和CSS小型化(在生产模式下),但它对Jade或Stylus没有任何作用,因此如果您真的需要,就必须将这些任务添加到Sails Gruntfile中。

票数 57
EN

Stack Overflow用户

发布于 2014-04-10 02:26:07

您的问题正是我创建Sailng:https://github.com/ryancp/sailng的原因,它是一个使用最新Sails0.10.0-Rc5的示例/样板应用程序。

它还演示了如何在没有ajax轮询的情况下使用Sails中的socket.io为客户端提供实时更新。

克隆它,并按照指示得到一个更好的想法如何使用帆和角在一起。

票数 12
EN

Stack Overflow用户

发布于 2015-05-29 22:32:08

我也做了样本“样板/示例”应用程序的Sails.js +角。在我的解决方案中,这些服务器被分离到后台和前端(两个服务器)。

我的解决方案还演示了套接字通信+用户之间数据内的实时更新。

试试看吧。https://github.com/tarlepp/angular-sailsjs-boilerplate

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21938850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档