Angularjs4与快速发电机

时间:2017-08-25 08:47:11

标签: node.js angular express

使用本教程开发了一个简单的角度4应用程序

https://scotch.io/tutorials/mean-app-with-angular-2-and-the-angular-cli

但是我如何将angular 4 app集成到使用express generator生成的快速应用程序中?

一种方法是REST API的方法,它表示JS app用作API提供程序,而角度应用程序与REST api进行通信。

但我想从快递申请本身提供角度应用程序..

3 个答案:

答案 0 :(得分:2)

我认为这对你有帮助。首先我假设,您使用快速服务器来处理一些api请求,并告诉我们这些路由以/api开头。他们可能与你的不同。

  • 首先按ng build构建您的角度应用程序,它将在您的项目文件夹中创建一个名为/dist的文件夹。
  • 将该文件夹复制到您的快速项目/public文件夹中。您必须将它们放在静态路由文件夹中。 /public文件夹是默认的静态路由文件夹。这就是我把它放在那里的原因。如果你有自己的,你也可以放在那里。
  • 按如下方式编辑app.js文件

    // Set our api routes
    app.use('/api', api); // API router definitions.

    // Catch all other routes and return the index file
    app.get('*', function(req, res) {
      res.sendFile(path.join(__dirname, 'dist/index.html'));
    });

希望你会这样帮助。
谢谢。

答案 1 :(得分:0)

您可以通过服务器提供此服务:

// Catch root route and return index.html
app.get('/', (req, res) => {
  res.sendFile(path.join(__dirname, 'app/index.html'));
});

// Catch all other routes
app.get('*', (req, res) => {
  res.sendFile(path.join(__dirname, 'app', req.originalUrl));
});

但请注意设置index.html的正确路径。

答案 2 :(得分:0)

有一个名为MEAN的技术堆栈,意味着(巧合:) M ongoDB, E xpress, A ngular和 N odejs。所以这基本上就是你要找的东西。

尽管你可以创建自己的文件结构,但有一个类似于Express-generator和angular-cli的mean-cli。你可以找到它here

为了使Angular正常工作(比如请求像example.com/something这样的网站,然后激活路由something),我总是返回index.html以获取任何请求并设置快递返回所有静态文件也是如此。然后我创建一个路由/api来处理我的所有REST api请求。

请务必首先设置/api路线,然后设置其他静态文件,例如bundle.js,最后index.html为路线**