Как передать реквизиты компоненту Svelte из Javascript? - PullRequest
1 голос
/ 19 сентября 2019

У меня есть страница по умолчанию моего веб-приложения, которая перенаправляет на разные компоненты, что-то вроде следующего:

<script>
  import page from "page";
  import Form from "./Form.svelte";
  import Dashboard from "./Dashboard.svelte";

  let content = "";
  page.base("/");
  page("", function() {
    content = Form;
  });
  page("dashboard", function() {
    content = Dashboard;
  });
  page({
    hashbang: true
  });
</script>

Теперь, если я хочу передать некоторые реквизиты, скажем, страницу панели инструментов отсюда, как можноЯ делаю это?Я попытался следовать, но это не сработало.

content = new Dashboard({
    props: {
        answer: 42
    }
});

1 Ответ

1 голос
/ 19 сентября 2019

См. Документы для <svelte:component>.Для передачи произвольных реквизитов вы можете использовать атрибуты:

<svelte:component this={content} {...props}/>

Вот живой пример: https://svelte.dev/repl/74593f36569a4c268d8a6ab277db34b5?version=3.12.1

Вот официальный пример (в настоящее время не демонстрируется передача реквизитов):https://svelte.dev/examples#svelte-component

...