Svelte-маршрутизация ссылки удаляет базовый путь в электроне - PullRequest
0 голосов
/ 03 мая 2020

Я работаю над приложением Electron. js, использующим Svelte в качестве моей среды интерфейса. Я использую библиотеку svelte-routing для маршрутизации:

<Router>
    <Route path="">
      //Home Page
      <Link to="subpath">
    </Route>

      <Route path="subpath">
        //Subpath
      </Route>
</Router>

При нажатии на ссылку удаляется базовый путь, оставляя только подпуть: я получаю: file:///subpath вместо file:///path/to/project/public/index.html в window.location.

Маршрутизация все еще работает, но когда электрон выполняет горячую перезагрузку, все, что я получаю, это пустой экран и ошибка: Not allowed to load local resource: file:///subpath

Как я могу это исправить?

1 Ответ

0 голосов
/ 04 мая 2020

Ха sh маршрутизация решит эту проблему. Например, вместо пути /about вы бы использовали #/about. В электронном выражении это означает, что file:///path/to/index.html#/about

К сожалению svelte-routing не поддерживает маршрутизацию ha sh #.

Один маршрутизатор, который явно поддерживает это @jamen/svelte-router (могут быть и другие).

Вот пример использования @james/svelte-router:

<!-- App.svelte -->
<script>
  import {Router} from '@jamen/svelte-router'
  import Home from './screens/Home.svelte'
  import About from './screens/About.svelte'

  const routes = {
    "/": Home,
    "/about": About
  }
</script>

<Router {routes}/>
...