使用本教程开发了一个简单的角度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进行通信。
但我想从快递申请本身提供角度应用程序..
答案 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
为路线**
。