首页 > 原创文章 > 软件开发 > 查看文章

Svelte框架介绍及环境配置运行

所属分类:软件开发 来源: 丁老师原创 更新时间:2025-09-03 09:04 IP属地: 深圳
点击阅读全文

svelte-1.png

Svelte框架介绍
与React、Vue、Angular等传统框架不同,Svelte是一个独特的前端框架,它采用编译时渲染而非运行时渲染,具有如下特点:
无虚拟dom:Svelte在构建时将组件编译为高效的原生JavaScript代码,运行时无需额外的框架代码,性能接近原生;
体积极小:编译后的代码体积远小于传统框架,加载速度更快;
简洁的语法:使用html/css/JavaScript原生语法,学习成本低,代码更直观;
响应式编程:通过简单的赋值操作实现响应式,无需setState或reactive等API;
内置状态管理:组件间通信简单,无需额外引入状态管理库;

Svelte框架安装运行
运行环境:
Node.js14.0.0或更高版本,丁老师更推荐使用Node.js 16以上的版本。

创建项目:

#使用官方模板创建项目
npx degit sveltejs/template my-svelte-app

#进入项目目录
cd my-svelte-app

安装依赖:

npm install

启动开发服务器:

npm run dev

启动成功后,终端会显示项目地址(一般是http://localhost:5000),输入网址打开浏览器就能看到默认页面。

项目结构说明:

my-svelte-app/
├── public/ #静态资源(图片、字体等)
│ ├── favicon.png
│ └── index.html #入口的html
├── src/
│ ├── App.svelte #根组件
│ └── main.js #入口文件
├── package.json #项目配置
└── rollup.config.js #打包配置(类似webpack)

编写第一个Svelte组件:
打开src/App.svelte,替换为以下内容:

<script>
	let count=0;
	function increment(){
		count += 1;
	}
</script>

<!--模板-->
<div class="container">
	<h1>Hello Svelte!</h1>
	<p>计数: {count}</p>
	<button on:click={increment}>+1</button>
</div>

<!--css样式-->
<style>
	.container{
		text-align:center;
		margin-top:50px;
	}

	button{
		padding:8px 16px;
		font-size:16px;
		cursor:pointer;
		background:#165DFF;
		color:white;
		border:none;
		border-radius:4px;
	}
</style>

可以看到,无论是从语法结构,还是函数变量,Svelte的代码和html+css就是一模一样!太神奇了!
代码保存后,浏览器会自动刷新页面,页面会显示一个计数器,点击按钮可以看到字增长。可

构建生产版本:
当项目开发完成后,运行以下命令构建优化后的生产版本:

npm run build

#构建后的文件会生成在public/build目录下,可直接拷贝后部署到服务器。

Svelte相关工具:
1.SvelteKit:Svelte官方的全栈框架,支持服务端渲染、路由、API等,类似基于React的Next.js;

72c58c80-9727-11eb-98b2-f352fded32b9.png

#创建SvelteKit项目
npm create svelte@latest my-sveltekit-app

2.IDE插件:推荐在VS Code中安装Svelte for VS Code插件,支持语法高亮和智能提示。

8B1vaTv.gif

全文总结:
Svelte以简洁的语法和出色的性能,正在前端领域快速崛起,尤其适合追求轻量和高效的开发者。对于开发更复杂的应用,丁老师建议直接学习SvelteKit,提供了更完整的解决方案。同时丁老师提供基于Sveltekit的全栈应用开发,如果你在Sveltekit的开发过程中,有任何疑问,或是遇到了相关问题,欢迎联系丁老师进行咨询交流。

下一篇:没有了

相关文章

重庆微信小程序开发

重庆微信小程序开发

jquery1.7版本之前不支持on事件的解...

这个时候可以用到live方法

微信公众号如何集成对接网站网页

微信公众号可以把官网的网页集成进去吗?想通过微信公众号实现打开公司网站的页面,具体要怎么实现呢?其实这个功能,可以通过微信菜单的方式来实现...

wordpress卸载删除插件的方法

经常有使用wordpress做网站的客户咨询,wordpress里装了很多没用的插件,这些插件不知道怎么删除。今天丁老师来教给大家。wordpress删除插件的方法:1.使用管理员长啊后登录wordpress,进入Dashboard(控...

推荐文章

宝塔面板phpmyadmin数据库表导航树禁...

宝塔面板的phpmyadmin,默认数据库表导航树是每30个一页,非常的不直观,可以通过修改宝塔phpmyadmin配置文件的方式来禁止他分页。修改方法:1.进入服务器/www/server/phpmyadmin/phpmyadmin_随机...

mysql导入文件,source命令/php...

用phpmyadmin导入大数据库文件时,容易502badgateway,可以直接在linux上用mysql原生命令导入。1.上传sql文件到目录用Xshell登录服务器,将迁移过来的sql文件移到home目录下,方便下一步的操作,站长之前...

微信小程序提示“手机号快速验证组件”资源包用...

微信小程序自2023年8月起,开始对《手机号快速验证组件》进行收费,每个小程序有1000次的免费额度,超过额度就要收费。说白了就是以后在使用微信小程序获取用户手机(用户主动授权)的时候,需要按次数收费了。那么,在当前的经济状况下,如何做到轻...

如何删除idea软件搜索时的find mas...

在使用idea系列的配套软件时,如intellijidea、PhpStorm、WebStrom时,在搜索文件时,右上角的filemask可以筛选指定类型的文件。但是有时候可能会输入错误,产生多个记录,而且没办法删除,在以后的开发中经常会耽误...

QQ咨询 微信咨询