重生之初识svelte框架(1)

2023-10-31 07:36
文章标签 初识 框架 重生 svelte

本文主要是介绍重生之初识svelte框架(1),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 什么是 Svelte?

官网写到:

Svelte 是一个构建 web 应用程序的工具。Svelte 与诸如 React 和 Vue 等 JavaScript 框架类似,都怀揣着一颗让构建交互式用户界面变得更容易的心。

但是有一个关键的区别:Svelte 在 构建/编译阶段 将你的应用程序转换为理想的 JavaScript 应用,而不是在 运行阶段 解释应用程序的代码。这意味着你不需要为框架所消耗的性能付出成本,并且在应用程序首次加载时没有额外损失。

你可以使用 Svelte 构建整个应用程序,也可以逐步将其融合到现有的代码中。你还可以将组件作为独立的包(package)交付到任何地方,并且不会有传统框架所带来的额外开销。

2 添加数据

再开始之前需要了解一下在 Svelte 中的组件:

应用程序由一个或多个 组件(components) 构成。它将 HTML、CSS 和 JavaScript 代码封装在一起并写入 .svelte 后缀名的文件中。

总结:简单来说一个.svelte文件就是一个组件。这和Vue类似。但是其中的区别就在于Vue需要再 在引入的文件中 component对象中注册。svelte不需要。

官网中添加数据:

在组件中添加一个 script 标签,并声明一个 name 变量,在dom中回显。

<script>let name = 'world'; 
</script>
<h1>Hello {name}!</h1>

总结:此时{name} 变量就像vue中的模板语法:{{name}},这样就容易理解。

3 动态属性

就像可以使用花括号控制文本一样,也可以使用花括号控制元素属性。

我们的图像缺少一个 src 属性,让我们添加一个吧:

<img src={src}>

在上面这个例子中,我们缺少 alt 属性,该属性用于描述这个标签的用途,以便让使用屏幕阅读器的用户,或网络连接缓慢、不稳定的用户了解这幅图像的用途。

<img src={src} alt="A man dances.">

名称和值相同的属性并不少见,比如 src={src}。Svelte 为这些情况提供了一个方便的语法糖:

<img {src} alt="A man dances.">

4 CSS样式

就像在 HTML 中一样,可以向组件添加一个 <style> 标签。

<style>p {color: purple;font-family: 'Comic Sans MS', cursive;font-size: 2em;}
</style><p>This is a paragraph.</p>

总结:重要的是,这些规则是“作用域内的组件”。 不会在应用程序的其他地方意外更改<p>元素的样式,这就行我们在Vue中写到的 <style scoped> ...</style>
 

5 嵌套组件

将整个应用程序放在一个组件中是不切实际的。 取而代之的是,我们可以从其他文件中导入组件,并像包含元素一样包含它们。

以下是我们的 App.svelte 组件

<script>import Nested from './Nested.svelte';
</script><style>p {color: purple;font-family: 'Comic Sans MS', cursive;font-size: 2em;}
</style><p>This is a paragraph.</p>
<Nested/>

Nested 组件:

<p>This is another paragraph.</p>

官网中说道:注尽管 Nested.svelte 有一个 <p> 元素,但 App.svelte 中的样式是不会溢出的(也就是不会影响 Nested.svelte 中的 <p> 元素)。

还需要注意的是,组件名称 Nested 的首字母大写。采用此约定是为了使我们能够区分用户自定义的组件和一般的 HTML 标签。

6 HTML标签

通常,字符串以纯文本形式插入,这意味着像 < 和 > 这样的字符没有特殊的含义。

但有时需要将 HTML 直接绘制到组件中。例如,您现在正在阅读的这段文字是存放于 markdown 文件中的,而展示到本页面时是作为一个 HTML 块。

在 Svelte 中,你可以使用特殊标记 {@html ...} 实现: 语法与Vue中的v-html一致。

<p>{@html string}</p>

注意:官网明确写到,在将表达式的输出插入到 DOM 之前,Svelte 不会对 {@html ...} 内的表达式的输出做任何清理的。换言之,如果使用此功能,则必须手动转义来自不信任源的 HTML 代码,否则会使用户面临 XSS 攻击的风险。

 最后附上svelte 中文官网链接:Svelte 中文文档 | Svelte 中文网

这篇关于重生之初识svelte框架(1)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/313802

相关文章

Python结合Flask框架构建一个简易的远程控制系统

《Python结合Flask框架构建一个简易的远程控制系统》这篇文章主要为大家详细介绍了如何使用Python与Flask框架构建一个简易的远程控制系统,能够远程执行操作命令(如关机、重启、锁屏等),还... 目录1.概述2.功能使用系统命令执行实时屏幕监控3. BUG修复过程1. Authorization

SpringBoot集成图片验证码框架easy-captcha的详细过程

《SpringBoot集成图片验证码框架easy-captcha的详细过程》本文介绍了如何将Easy-Captcha框架集成到SpringBoot项目中,实现图片验证码功能,Easy-Captcha是... 目录SpringBoot集成图片验证码框架easy-captcha一、引言二、依赖三、代码1. Ea

Gin框架中的GET和POST表单处理的实现

《Gin框架中的GET和POST表单处理的实现》Gin框架提供了简单而强大的机制来处理GET和POST表单提交的数据,通过c.Query、c.PostForm、c.Bind和c.Request.For... 目录一、GET表单处理二、POST表单处理1. 使用c.PostForm获取表单字段:2. 绑定到结

修改若依框架Token的过期时间问题

《修改若依框架Token的过期时间问题》本文介绍了如何修改若依框架中Token的过期时间,通过修改`application.yml`文件中的配置来实现,默认单位为分钟,希望此经验对大家有所帮助,也欢迎... 目录修改若依框架Token的过期时间修改Token的过期时间关闭Token的过期时js间总结修改若依

MyBatis框架实现一个简单的数据查询操作

《MyBatis框架实现一个简单的数据查询操作》本文介绍了MyBatis框架下进行数据查询操作的详细步骤,括创建实体类、编写SQL标签、配置Mapper、开启驼峰命名映射以及执行SQL语句等,感兴趣的... 基于在前面几章我们已经学习了对MyBATis进行环境配置,并利用SqlSessionFactory核

cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个?

跨平台系列 cross-plateform 跨平台应用程序-01-概览 cross-plateform 跨平台应用程序-02-有哪些主流技术栈? cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个? cross-plateform 跨平台应用程序-04-React Native 介绍 cross-plateform 跨平台应用程序-05-Flutte

Spring框架5 - 容器的扩展功能 (ApplicationContext)

private static ApplicationContext applicationContext;static {applicationContext = new ClassPathXmlApplicationContext("bean.xml");} BeanFactory的功能扩展类ApplicationContext进行深度的分析。ApplicationConext与 BeanF

数据治理框架-ISO数据治理标准

引言 "数据治理"并不是一个新的概念,国内外有很多组织专注于数据治理理论和实践的研究。目前国际上,主要的数据治理框架有ISO数据治理标准、GDI数据治理框架、DAMA数据治理管理框架等。 ISO数据治理标准 改标准阐述了数据治理的标准、基本原则和数据治理模型,是一套完整的数据治理方法论。 ISO/IEC 38505标准的数据治理方法论的核心内容如下: 数据治理的目标:促进组织高效、合理地

Linux操作系统 初识

在认识操作系统之前,我们首先来了解一下计算机的发展: 计算机的发展 世界上第一台计算机名叫埃尼阿克,诞生在1945年2月14日,用于军事用途。 后来因为计算机的优势和潜力巨大,计算机开始飞速发展,并产生了一个当时一直有效的定律:摩尔定律--当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍。 那么相应的,计算机就会变得越来越快,越来越小型化。

ZooKeeper 中的 Curator 框架解析

Apache ZooKeeper 是一个为分布式应用提供一致性服务的软件。它提供了诸如配置管理、分布式同步、组服务等功能。在使用 ZooKeeper 时,Curator 是一个非常流行的客户端库,它简化了 ZooKeeper 的使用,提供了高级的抽象和丰富的工具。本文将详细介绍 Curator 框架,包括它的设计哲学、核心组件以及如何使用 Curator 来简化 ZooKeeper 的操作。 1