我如何将Node.js实现为Ionic/Angular应用程序?

Lin*_*say 6 javascript node.js express angularjs ionic-framework

我目前有一个基础"标签"Ionic/Angular应用程序.

ionic start testproject tabs

我已经完成了一个npm install以获得项目目录中的一些基本节点模块.

我对如何一起使用Angular和Express以及如何设置节点/服务器端的事情感到有些困惑.我已经尝试过看一堆教程,发现自己在混合中有点迷失,所以我希望有人会有一些资源可能会帮助我朝着正确的方向前进.

因为Angular和Express都做MVC/MV* - 它开始变得令人困惑的是什么做了什么.我对设置感到困惑,以及如何让他们一起聊天.

请告诉我我能提供的其他信息,因为我不确定还有什么.(该项目非常简单.)

非常感谢!

Joe*_*oyd 9

标准角度Web应用程序

在构建MEAN Web应用程序时,您应该首先使用Express-Generator创建Express应用程序这些命令(假设您有节点和express已安装全局)

$ express myapp

构建应用程序

$ cd myapp

进入应用程序

$ npm安装

package.json文件安装依赖项

文件结构

.
??? app.js
??? bin
?   ??? www
??? models
?   ??? home.js
??? node_modules
??? package.json
??? public // your Angular app goes here
??? README.md
??? routes
?   ??? home.js
?   ??? users.js
??? views
Run Code Online (Sandbox Code Playgroud)

所以上面我们可以看到应用程序的基本结构.运行Express生成器后应该有类似的东西.您将获取Angular应用程序并将其放入公用文件夹并运行服务器

$ DEBUG = myapp npm start

离子的

使用Ionic应用程序,您需要某个人的手机应用程序,因为您不需要在此处将应用程序添加到公共文件夹中.您将使用Express来创建一个api供您的应用程序调用.您可以使用server.js可以运行的文件创建一个简单的Web api

$ node server.js

在您的Angular工厂和服务中,您可以$http直接拨打电话给您的api.

更新

目前正在使用样板来拆分平均应用程序的后端和前端,这意味着您将能够为您的Android应用程序,ios应用程序和您的Web应用程序提供完全相同的后端.

它是一项正在进行的工作,但随时可以查看它的想法或开始你自己的单独的前端和后端MEAN堆栈.https://github.com/joeLloyd/MEANBoilerPlate


Lio*_*onC 8

似乎你对术语MVC及其含义感到困惑.MVC(模型,视图,控制器)只是应用程序结构的一般模式.

使用angular编写Web应用程序时,实际上是在编写两个应用程序(在大多数情况下):

您的前端应用程序,即在您的浏览器中运行的应用程序,使用HTML,JS和CSS(以及它们之上的角度等框架),向用户显示数据并允许它们与之交互.后端应用程序,即在您的服务器上运行的应用程序(例如在节点或Spring或RubyOnRails上运行...),存储数据,提供数据并计算业务逻辑.

这两个应用程序都可以使用MVC模式独立构建.然而,这并不影响它们如何协同工作 - 它们完全独立并使用HTTP协议进行通信(在前端使用AJAX).因此,对于角度前端应用程序,后端应用程序是否在Node或其他任何设备上运行并不重要.

只是为了解释名称int hat context:

Node是一个后端框架,运行服务器,执行业务逻辑并与数据库通信.Express是Node的一个模块,可以更轻松地在Node中编写HTTP API.

Ionic和Angular是前端框架.它们允许您更轻松地创建前端应用程序.

我希望这有点帮助,它是一个非常庞大的主题,它不可能在一个合理大小的StackOverflow答案中解释所有这些.