Svelte基础
Advanced Svelte
Advanced reactivity
Motion
Advanced bindings
Advanced transitions
Context API
Special elements
<script module>
Next steps
Basic SvelteKit
Introduction
Routing
Loading data
Headers and cookies
Shared modules
API routes
$app/state
Errors and redirects
Advanced SvelteKit
Page options
Link options
Advanced routing
Advanced loading
Environment variables
Conclusion
明智如你,应该不会整个应用就整一个组件吧?贴心的Svelte也想到了,我们可以从其它文件中引入组件并在标签中使用它们,以此支持组合多个组件
It would be impractical to put your entire app in a single component. Instead, we can import components from other files and include them in our markup.
首先在文件App.svelte
的顶部添加<script>
标签并引入Nested.svelte
Add a
<script>
tag to the top ofApp.svelte
that importsNested.svelte
...
App
<script>
import Nested from './Nested.svelte';
</script>
<script lang="ts">
import Nested from './Nested.svelte';
</script>
接下来就可以在标签中使用<Nested>
组件了
...and include a
<Nested />
component:
App
<p>This is a paragraph.</p>
<Nested />
注意看:虽然在Nested.svelte
中也有个<p>
元素但App.svelte
中的样式并没有影响到它。
Notice that even though
Nested.svelte
has a<p>
element, the styles fromApp.svelte
don’t leak in.
为了区别于HTML原生元素,组件的标签名称采用首字母大写. [!NOTE] Component names are capitalised, to distinguish them from HTML elements.
1
2
3
4
5
6
7
8
9
10
<p>This is a paragraph.</p>
<style>
p {
color: goldenrod;
font-family: 'Comic Sans MS', cursive;
font-size: 2em;
}
</style>