Весна, угловой Js - PullRequest
       5

Весна, угловой Js

0 голосов
/ 28 мая 2018

Я новичок в Spring Framework и Angular JS.Я занимаюсь разработкой Html-файлов с угловым js в качестве внешнего и Spring mvc в качестве внутреннего.Найдите конфигурацию диспетчера-сервлета, как показано ниже.

<context:component-scan base-package="com.hourforyou" />
<mvc:resources mapping="/assets/**" location="/assets/" />
<mvc:resources mapping="/pages/**" location="/WEB-INF/pages/" />
<mvc:annotation-driven />

Первый запрос поступает в Indexcontroller и правильно отображает представление.

@Controller
public class IndexController {
@RequestMapping("/")
public String login() {
    return "pages/login.html";
}

}

После проверки пользователя вlogin.html, я перенаправляю на home.html.Но он не работает.

@Controller
@RequestMapping(URL.HOME)
public class HomeController {

@RequestMapping
public String getHome() {
    return "pages/home.html";
}

Мой код app.js

'use strict';

var App = angular.module('backoffice', [ 'ngRoute' ]);

App.config(function($routeProvider) {
$routeProvider.when('/home', {
    templateUrl : 'home.html',
    controller : 'HomeController'
}).when('/dashboard', {
    templateUrl : 'dashboard.html',
    controller : 'DashboardController'
}).otherwise({
    redirectTo : '/'
});
});

Запрос приходит к getHome (), но он не перенаправляет в файл home.html.Пожалуйста, скажите мне, что я делаю не так.

Ответы [ 2 ]

0 голосов
/ 30 мая 2018

Спасибо за ответ.Именно это я и сделал в своем коде.Но решение состоит в том, что я создал файл index.html, упоминавший директиву ngview в теге div внутри тела.Диспетчер первого вызова Spring вернет index.html.

@Controller
public class IndexController {
@RequestMapping("/")
public String login() {
   return "pages/index.html";
}

в index.html

<html ng-app='backoffice'  ng-cloak>
<head>
<base href="/module-backoffice/">
<head>
   //js files
</head>
<body>
   <div ng-view></div>
 </body

в маршрутизации App.js

when('/', {
    templateUrl : 'pages/login.html',
    controller : 'LoginController'
})

После успешного входа в системумаршрутизация

.when('/home.html', {
    templateUrl : 'pages/home.html',
    controller : 'HomeController'
})
0 голосов
/ 29 мая 2018

Вы можете написать так ...

Вместо маршрутизации на стороне вашего сервера просто верните строку success/fail/invalid в ваш запрос API.

На основании чего вы можете направить к соответствующемустраница после проверки в угловом положении.

В контроллере Spring

@RequestMapping(value = { "/login" }, method = RequestMethod.POST)
@ResponseBody
public String checkLogin(@RequestBody User user) {

    String status = service.login(user);
    return status;// return success or fail or invalid based on your logic in serviceImpl class
}

In app.js

.state('home', {
      url:'/home',
      templateUrl: 'path/to/Home.html',
      controller:'Home'
      })

В контроллере входа в систему

scope.login  = function(user){
                Repository.login(user)
                .then(function (response){
                if(response.data.status = "success")
                {
                    state.go("home");
                }
                else
                {
                    alert(" Password is Invalid...");
                    state.go("login");
                }
                });
                };
                }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...