快速入门
svelte
传承于Ractive
,在语法上与Vue
有一定的相似性,所以对于熟悉Vue
的同学来说可能更加接受其编码风格。
# Svelte介绍
对于这个框架的评价来说,这里可以引用尤大知乎的回答:
作者是
Rich Harris
,也就是Ractive
,Rollup
和Buble
的作者,堪称前端界的轮子哥,现在又带来新轮子了!这个框架的API
设计是从Ractive
那边传承过来的(自然跟Vue
也非常像),但这不是重点。Svelte
的核心思想在于『通过静态编译减少框架运行时的代码量』。举例来说,当前的框架无论是React
、Angular
还是Vue
,不管你怎么编译,使用的时候必然需要『引入』框架本身,也就是所谓的运行时 (runtime
)。但是用Svelte
就不一样,一个Svelte
组件编译了以后,所有需要的运行时代码都包含在里面了,除了引入这个组件本身,你不需要再额外引入一个所谓的框架运行时!......
完整回答直通车:如何看待 svelte 这个前端框架?
# 组件基本结构
# script
逻辑操作,以及数据的提供方,类比于Vue
的script
标签的含义。
# 示例代码
<script>
const str = '我是一个Svelte'
</script>
2
3
# HTML
对于界面HTML
标签编写或Svelte
组件使用,都将直接可以在文件顶层进行编写,无需包裹在template
标签中。
# 示例代码
<script>
const str = '我是一个Svelte'
</script>
<p>Hello Svelte</p>
2
3
4
5
# style
对于一个前端项目来说,不可或缺的还有对于样式的控制,那么在Svelte
中又是如何对元素的样式进行控制的呢。
其实还是在一定程度上和Vue
差别不大的,可以说熟悉Vue
的童鞋在看完它基本的组件的编写方式之后,估计会直呼,这不就是Vue
么。
# 示例代码
<script>
const str = '我是一个Svelte'
</script>
<p>Hello Svelte</p>
<style>
p{
color: #fcf;
}
</style>
2
3
4
5
6
7
8
9
10
11
清晰明了,可以说几乎从当前我们看上去的Svelte
的写法几乎和Vue
并无太大差别。
这里别说人家
Svelte
是抄Vue
的,人家是传承于Ractive
(再次强调)。
# 总结
看完Svelte
组件的基本机构之后,相信你也能使用Svelte
编写简单的静态页面了,当然对于前端人来说,只能编写静态页面显然是不太符合我们格调的,接下来我们将研究它是如何进行逻辑操作以及页面数据的控制的。