在任何實際應用程序中,您都需要將數據從一個組件傳遞到其子組件。爲此,我們需要聲明properties,通常將其縮寫爲'props'。
注意:Svelte中,我們使用export關鍵字來實現。export的工作原理與JavaScript中不同。
// Nested.svelte
<script>
export let answer;
</script>
<p>The answer is {answer}</p>
// index.svelte
<script>
import Nested from '../components/Nested';
</script>
<Nested answer={42}/>
指定props默認值,例如:
// Nested.svelte
<script>
export let answer='a mystery';
</script>
<p>The answer is {answer}</p>
// index.svelte
<script>
import Nested from '../components/Nested';
</script>
<Nested answer={42}/>
<Nested/>
如果您有一個屬性對象,則可以將它們“擴展”到一個組件上,而不用指定每個對象:
// Info.svelte
<script>
export let name;
export let github;
export let version;
</script>
<div>
<p>The name is {name}</p>
<a href={github}>The github is {github}</a>
<p>The version is {version}</p>
</div>
// index.svelte
<script>
import Info from "../components/Info";
let info = {
name: "sullay",
github: "https://github.com/sullay/svelte-learn",
version: "1.0.0"
};
</script>
<Info {...info} />
本教程的所有代碼均上傳到github有需要的同學可以參考 https://github.com/sullay/svelte-learn。