首页 > 其他分享 >svelte - 1. 基础知识

svelte - 1. 基础知识

时间:2024-07-25 09:56:24浏览次数:9  
标签:count 基础知识 html let numbers 组件 svelte

svelte中文官网
vue和svelt语法对比
掘金-svelte入门简介

文章目录

1、基本页面框架

<script>
	let src = 'tutorial/image.gif';
</script>

<img src={
   src} alt="a man dance">

<style></style>

2、动态属性

{}包裹

<script>
	let src = 'tutorial/image.gif';
</script>

<img src={
   src} alt="a man dance">

3、嵌套组件

https://www.svelte.cn/tutorial/nested-components

  • 通过import引入
  • 直接首字母大写标签使用,不需要像 vue 在 components 中注册
  • 样式不会溢出,即每个.svelte 组件中<style>里面写的样式不会影响别的组件相同元素

例:

(1)父组件 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>

(2)子组件 nested.svelte

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

4、@html: 插入html标签,显示真实dom元素

@html:类似 vue 的 v-html

<script>
	let string = `this string contains some <strong>HTML!!!</strong>`;
</script>

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

5、点击事件 on:click={handleClick}

6、响应式声明

(1)简单类型 — 通过赋值触发

let count = 0; // 普通定义
$: doubled = count * 2; // 响应式声明

// HTML中使用,count 改变,doubled就改变
<p>{
   count} doubled is {
   doubled}</p>

(2)复杂类型响应

由于 Svelte 的反应性是由赋值语句触发的,使用数组的诸如 push 和 splice 之类的方法就不会触发自动更新。

法1:再次赋值

function addNumber() {
   
	numbers.push(numbers.length + 1);
	numbers = numbers;
}

法2:用解构

<script>
	let numbers = [1, 2, 3, 4];

	function addNumber() {
   
		// 法1
		// numbers.push(numbers.length + 1);
		// numbers = numbers
		// 法2
		numbers = [...numbers, numbers.length + 1]
	}

	$: sum = numbers.reduce((t, n

标签:count,基础知识,html,let,numbers,组件,svelte
From: https://blog.csdn.net/weixin_41294419/article/details/140525377

相关文章

  • MYSQL基础知识之DML
    数据库备份与还原备份 mysqldump.exe-hlocalhost-P3306(端口号) -uroot -p库名>E:/库名20240719.sql还原 mysql.exe-h106.55.169.91-P3306-uroot-phaha<E:/xiao2.sql数据表的新增 insertinto表名(字段名,字段名,....,字段名) values/......
  • 网络安全基础知识及安全意识培训(73页可编辑PPT)
    引言:在当今数字化时代,网络安全已成为企业和个人不可忽视的重要议题。随着互联网的普及和技术的飞速发展,网络威胁日益复杂多变,从简单的病毒传播到高级持续性威胁(APT)、勒索软件攻击、数据泄露等,无一不对网络安全构成了严峻挑战。因此,开展网络安全基础知识及安全意识培训,对于提升......
  • Linux 必备基础知识与常用命令大汇总
    这是我整理的关于Linux基础知识的笔记,主要为了方便在长期不用Linux的情况下,突然需要使用时可以快速查找。我最初有些犹豫是否应该写成文章,但我认为对于处于相似境遇的人来说,能够方便地复制和使用这些知识会很有帮助,所以决定将其分享出来。虽然MacOS不是Linux,而是BSD系系统,但我......
  • CSS 基础知识
    CSS(级联样式表)是设置Web内容样式的代码。CSS基础知识将介绍入门所需的内容。我们将回答以下问题:如何将文本设置为红色?如何使内容显示在(网页)布局中的某个位置?如何用背景图片和颜色装饰我的网页?什么是CSS?像HTML一样,CSS不是一种编程语言。它也不是一种标记语言。CSS是一种......
  • JavaScript 基础知识
    JavaScript是一种编程语言,可为您的网站增加交互性。这发生在游戏中,在按下按钮或在表单上输入数据时的响应行为中;具有动态样式;带有动画等。本文可帮助您开始使用JavaScript,并进一步了解可能的情况。什么是JavaScript?JavaScript 是一种功能强大的编程语言,可以为网站......
  • 五、IPv6基础知识-NDP
    NDP:IPv6邻居发现协议,主要通过ICMPv6报文来实现其功能。1.主要功能 NDP功能对应实现的ICMPv6报文如下:2.路由发现功能 1.路由器发现是指主机发现本地链路上路由器和确定其配置信息的过程。2.路由器发现可以同时实现以下3个功能:路由器发现(RouterDiscovery):主机定位邻......
  • day2 测试基础知识
    1.简述黑盒测试和白盒测试的优缺点?2.在没有产品说明书和需求文档的情况下能够进行黑盒测试的设计吗?能,可以通过其他工作内容去替代产品说明书和需求文档3.单元测试的策略有哪些,主要内容有哪些?逻辑覆盖,循环覆盖,同行评审,桌前检查,代码走查,代码评审,静态数据流分析......
  • AJAX基础知识
    1.AJAX1.什么是AJAX​AsynchronousJavascriptAndXml​异步的JS和xml(EXtensibleMarkupLanguage)​通过JS异步的向服务器发送请求并接收响应数据​同步访问:​当客户端向服务器发送请求时,服务器在处理的过程中,浏览器只能等待,效率较低​异步访问:​当......
  • 通讯录管理系统(C++基础知识实现)
    通讯录管理系统描述:本人C++小白一枚,正在学习C++基础知识,给大家分享一款使用C++基础知识实现的通讯录管理系统,一起努力进步,大佬轻点喷。1.知识点(1)预处理器指令(#include,#define);(2)命名空间使用(usingnamespacestd;);(3)函数定义:定义了多个函数,如menu,addContact,show......
  • 知识清单|Python入门必备基础知识点
    1.数据类型和变量1.1缩进和注释的规则Python使用缩进来表示代码块,通常使用四个空格或一个制表符。注释使用#开头。1.2基本数据类型Python支持多种基本数据类型,包括整数、浮点数、字符串、布尔值和空值。1.3变量的动态类型和赋值Python是动态类型语言,变量可......