【问题标题】:Spring app doesn't know about angularJS project in the same solutionSpring 应用程序不知道同一解决方案中的 angularJS 项目
【发布时间】:2017-03-14 22:18:41
【问题描述】:

我通过AngularJS generator by yoeman生成了一个简单的angularJS项目

然后使用 JPA 存储库创建简单的 Spring-boot 项目,该存储库具有一个具有选择所有用户的功能的控制器方法。情况是,当我在端口 8080 上运行两个项目时 - spring 在端口 9000 上运行,angular 项目没有机会了解 spring 正在抛出的数据。

我在项目中的文件树如下所示:

我认为问题出在 index.html 文件上。通常它应该放在资源文件夹中,以便 spring 项目可以与 angular 项目进行通信。但是在 cmd 中的 grunt 推荐期间,构建文件夹会创建一个新的 index.html 文件,并且该过程会循环。我想过将 index.html 文件移动到资源文件夹中,但它不再有意义了。

我也想改变 Gruntfile.js 但老实说我不知道​​我应该改变什么。 Gruntfile 看起来像:Link to pastebin because the file was too long

简单的服务:

angular.module('webappApp')
  .factory('myroute', function ($resource) {
    var service = $resource('/api/user', { id : '@id'},
      {


      });

    return service;
  });

简单的控制器:

angular.module('webappApp')
  .controller('MyrouteCtrl', function (myroute) {
    console.log(myroute.query());
  });

【问题讨论】:

  • 您所说的“角度项目不可能知道弹簧抛出的数据是什么意思。” ?你应该通过 ajax 请求数据到 java 后端
  • 我通过 $resource 在 js 控制器中询问它们
  • 好的,给我们看看代码
  • 简单服务:angular.module('webappApp') .factory('myroute', function ($resource) { var service = $resource('/api/user', { id : '@id'}, { }); return service; }); 简单控制器:angular.module('webappApp') .controller('MyrouteCtrl', function (myroute) { console.log(myroute.query()); });
  • 使用该数据更新您的问题

标签: angularjs spring generator yo


【解决方案1】:

您需要在 grunt 代理中设置 endoints。例如grunt-connect-proxy

添加如下内容:

grunt.initConfig({
    connect: {
        server: {
            options: {
                port: 8080,
                hostname: 'localhost'
            },
            proxies: [
                {
                    context: '/api',
                    host: 'localhost',
                    port: 8080,
                    https: false
                }
            ]
        }
    }
})

但是你只需要本地开发。

【讨论】:

  • 是否可以在端口 8080 上同时运行 spring 项目和 angular?我不认为这是可能的,所以我无法想象如何使用它?
  • 第一个例子 index.html 文件在资源中。在我的例子中它是不同的 - 所以我无法得到那个例子作为我的帮助:(在第二个例子中我看不到任何共同点..
  • 或者 UI 应该在资源/静态文件夹中?
  • 例如,当我通过 jhipster 生成器创建项目时,它会在与上述问题完全相同的路径中创建所有“前端”文件
猜你喜欢
  • 2012-07-15
  • 1970-01-01
  • 2010-12-09
  • 1970-01-01
  • 1970-01-01
  • 2019-07-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多