我正在使用Angular 5和使用express的nodejs构建Web应用程序。由于前端和后端都将在同一台服务器上运行,我想在前端使用我的后端javascript函数。我找到的解决方案对我没用。
appController.js
var createApp = function (appData) {
console.log("App created")
}
exports.createApp = createApp;
这是我想在前面使用的后端文件。
答案 0 :(得分:0)
Javascript文件在前端使用时不需要导出内容。大多数时候,他们使用全局变量。你应该去那。
要将其添加到您的项目中,请将其添加到您想要的任何位置,并在您的Typescript中,您只需使用
declare var myGlobalVariable: any;
// ...
myGlobalVariable.createApp();
答案 1 :(得分:0)
如果您想在同一台服务器上运行Angular前端和NodeJS后端,您必须构建Angular项目并使用Express服务器提供构建的文件。
我想我找到了一个教程 - 但我现在无法找到它...... 相反,也许看看我的后端代码: https://github.com/saitho/ngHashi/blob/next/backend/src/index.ts
在生产模式下,它默认提供文件夹/ backend / dist_frontend中的文件(除了后端路由(/ api))。我使用构建过程(GitLab CI)将我需要的文件移动到相应的位置......
答案 2 :(得分:0)
我终于找到了解决方案。有必要修改tsconfig.json:
<强> tsconfig.json 强>
{
compilerOptions: {
.....
allowJS: true,
......
}
}