Navigo.js работает только на localhost - PullRequest
0 голосов
/ 07 июня 2018

Я пытаюсь построить маршруты для своего SPA, и проблема в том, что когда я использую localhost:3000, маршруты работают просто отлично.Это работает так, как и положено.Но если URL-адрес 127.0.0.1:8000 или domain.com/route, он не работает.

Для localhost:3000 Я использую модуль npm lite-server, а для 127.0.0.1:8000 Я использую модуль npmlocal-web-server.Библиотека, которую я использую для маршрутизации: Navigo .

Несколько маршрутов: Пример

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

Код маршрута:

var routes = new Navigo(null);

    // Main
    routes.on(() => {
        console.log('Default route');
    });

    // Other routes
    routes.on({
        '/route1': () => {
            console.log('route1');
        },
        '/route2': () => {
            console.log('route2');
        }
    }).resolve();

    // 404
    routes.notFound(() => {
        console.log(404);
    }).resolve();

Только Маршрут по умолчанию работает, остальные игнорируются.

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 07 июня 2018

Прекрасно работает для меня на 127.0.0.1 или другом домене.

const dummyTarget = document.querySelector('div'); // <-- Dummy target to fake navigation

// Initial Navigo
var root = null;
var useHash = true; // Defaults to: false
var hash = '#!'; // Defaults to: '#'
var router = new Navigo(root, useHash, hash);

router
    .on({
      '/': () => { // This is actually the route
        dummyTarget.innerHTML = `I'm on home page`;

      },
      '/another': () => {
        dummyTarget.innerHTML = 'Now on second page';
      }
    })
    .resolve();

Результат: enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...