我有一个角度4应用程序,我从节点js
服务我的服务器结构如下
.env
server.js
/admin //angular 4 app directory
index.html
....other angular files and assets folder
/modules
/config
...other files and folders at root level
server.js是我的服务器文件,我正在尝试使用以下代码为angular 4应用程序提供服务。
app.get('/admin', (req, res) => {
res.sendFile(path.join(__dirname, 'admin/index.html'));
});
所以我应该在http://localhost:3020/admin
获得角度应用当我到达http://localhost:3020/admin时,我在控制台中收到以下错误
SyntaxError: expected expression, got '<'[Learn More]
inline.a808723d583c934ba8bf.bundle.js:1
SyntaxError: expected expression, got '<'[Learn More]
polyfills.5d1d5b016f19755a7d41.bundle.js:1
SyntaxError: expected expression, got '<'[Learn More]
main.036acd83ead6248588f0.bundle.js:1
当我点击上面的任何一个链接时,它表示我的角度应用程序的href是
我注意到了,我使用https://angular.io/guide/deployment#!#fallback设置了它 使用以下命令ng build --prod --base-href =“/ admin /” 还有ng build --prod --base-href = / admin /。但我一直得到与上面相同的错误。
在我的index.html中,href设置为/ admin / i不断出现相同的错误。
我访问了以下链接,但没有找到任何有关我收到的错误消息。
答案 0 :(得分:1)
尝试使用该命令将Angular输出构建到正确的目录:
ng build --prod -op=./path/to/admin/
要回答您的评论,我建议您使用不同目录中的角度来源以避免混乱,并且只在admin
文件夹中使用内置输出。