Как внедрить маршрут Laravel в файл js, упакованный в веб-пакет? - PullRequest
1 голос
/ 21 января 2020

У меня есть файл js, который проверяет, доступно ли имя пользователя. У меня есть класс многократного использования ajax, в который я отправляю данные и слушаю результаты. Этот класс можно использовать повторно, и в качестве параметра инициализации он принимает только URL-адрес. Поэтому, если я хочу проверить, свободна ли электронная почта, я могу передать ей мой Laravel маршрут для проверки электронной почты. Модуль, который проверяет имя пользователя, был упакован в его на IIFE (хотя я открыт для предложений по другой реализации).

В настоящее время у меня есть полное имя пользователя проверки в его собственном файле js, который поставляется вместе с WebPack.

В настоящее время я храню инициализацию вне webpack и в моем html

<script>
    let apiQuery = new CustomLib.ApiQuery('{{route('users.name.availability')}}');
</script>

Теперь, если я хочу жестко закодировать URL-адрес, я могу переместить указанную выше инициализацию на _username_availability

Но это, по моему мнению, противоречит цели использования именованных маршрутов. Поскольку мои серверы разработки и производства имеют полные разные URL-адреса.

Как я могу либо вставить URL-адрес в _username_availability , чтобы я мог функционально упаковать свое имя пользователя? Или как я делаю это лучшее решение?

_username_availability. js

$(function () {
    apiQuery.subscribe(results);

    mybutton.on('change', function(e){
        apiQuery.search($(this).val());
    });

    function results(data){
        //.. Do something
    }

});

base. js

import ApiQuery from './_apiquery';
require('./_username_availability');
export {ApiQuery};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...