Как использовать информацию, отправленную контроллером в файле JavaScript с помощью Spring Boot? - PullRequest
0 голосов
/ 26 марта 2019

Я использую Spring Boot с движком шаблонов Thymeleaf.У меня есть HTML-файл client.html в папке шаблонов и JavaScript-файл functions.js в статической папке.Я хочу отправить из контроллера в файл JavaScript список.

Я пытался использовать этот синтаксис в файле JavaScript:

let listaArticulos = /*[[${numeroArticulos}]]*/ [];

Но я ничего не получаю.Я попытался использовать тег script в HTML, и это сработало, но я хочу, чтобы код JS был в отдельном файле, а не в теге script со всем моим HTML-кодом.

Контроллер, куда я отправляюинформация для JS выглядит следующим образом:

 @GetMapping("/articulos")
    public ModelAndView showHielo(@RequestParam(name = "numcli", required = false) String numcli){
        ModelAndView mav = new ModelAndView(ViewConstant.ARTICULOS);
        mav.addObject("numeroArticulos", searchMovimNumarts("  133"));
        return mav;
    }

Когда контроллер отправляет метод searchMovimNumarts () с именем "NumberroArticulos", он возвращает список.И файл JS, в который я хочу получить объект «NumberroArticulos», выглядит следующим образом:

/*This variable stores data sended by the controller*/
let listaArticulos = /*[[${numeroArticulos}]]*/ [];
console.log(listaArticulos);

Я хочу, чтобы консоль регистрировала содержимое Списка, используя файл JS, а не тег html.Как я могу решить это?

1 Ответ

0 голосов
/ 26 марта 2019

Механизм шаблонов Thymeleaf анализирует только файл шаблона (html-файлы). Таким образом, вы должны включить эти переменные, определенные в контроллере, во встроенный код js. Однако вам не нужно помещать весь код js в html. Иметь только ту часть кода, которая ссылается на эти переменные в теге script.

<script>
let listaArticulos = /*[[${numeroArticulos}]]*/ [];
</script>

и отослать их в свой внешний js после этого

<script src="/js/externalscript.js"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...