首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

sveltejs结合ol实现跨框架组件复用

概述 velte 是构建 Web 应用程序的一种新方法,核心思想在于通过静态编译减少框架运行时的代码量,它可以像React和VUE一样开发,但却没有虚拟DOM,可以将代码编译为体积小、不依赖于框架的JS...// 开发配置文件 │ └── rollup.config.js // 编译配置文件 ├── dist // 编译及调试文件 │ ├── index.html // 调试文件 │...└── index.js rollup.config.dev.js文件内容如下: import svelte from 'rollup-plugin-svelte' import resolve...文件内容如下: import svelte from 'rollup-plugin-svelte' import resolve from 'rollup-plugin-node-resolve' import.../ComponentMap.svelte'; 5. 打包编译 执行命令npm run dev或npm run build进行开发调试和编译打包。

77330

Svelte入门——Web Components实现跨框架组件复用

造成这种情况很重要的一个原因是,Svelte 的核心思想在于【通过静态编译减少框架运行时的代码量】,它可以像React和VUE一样开发,但却没有虚拟DOM。...,使它可以Svelte可以将代码编译为体积小、不依赖于框架的JS代码。 看起来满满优点,但因为过于灵活,导致大家无法写出高度一致的业务代码,以上优点并没有在实际的大项目中得到很好的体现。...添加后的rollup.config.js如下。...import svelte from 'rollup-plugin-svelte'; import resolve from '@rollup/plugin-node-resolve'; import...创建index.html页面,并引用编译好的js文件。同时引入spreadjs相关资源。 直接使用spread-sheets标签添加SpreadJS。 <!

1.4K30
您找到你想要的搜索结果了吗?
是的
没有找到

前端新宠 Svelte 带来哪些新思想?赶紧学起来!

传统框架如 React 和 Vue 在浏览器中需要做大量的工作,而 Svelte 将这些工作放到构建应用程序的编译阶段来处理。 需要注意,Svelte 是一款编译器。...Svelte 的作者叫 Rich Harris ,正在吃东西的这位就是他。 可能国内大多数工友对他不是很熟悉(我也完全不熟),但应该听过 Rollup 。 没错,他也是 Rollup 的爸爸。...Svelte 组件需要在 .svelte 后缀的文件中编写,Svelte 会将编写好的代码翻编译 JS 和 CSS 代码。 2....这是因为经过 Svelte 编译的代码,仅保留引用到的部分。 3....JS output: Svelte 编译后的 JS 代码。 CSS output: Svelte 编译后的 CSS 代码。 在 REPL 界面右上角还有一个下载按钮。

4.1K20

前端Svelte框架初体验

在官方的介绍中,Svelte 即是一个前端 UI框架,同时也是一个 编译器。...而Svelte 的设计思路是【通过静态编译减少框架运行时的代码量,即预编译】,Svelted完全溶入JavaScript,应用所有需要的运行时代码都包含在bundle.js里面,因此不需要额外在引入运行时..."scripts": { "dev": "PORT=4000 rollup -c -w", }, 4.2 less配置 创建Svelte项目的时候,模板本身是携带任何插件的,如果需要在 Svelte...npm install svelte-preprocess-less less 然后,在 rollup.config.js 中添加相关的配置,如果没有 rollup.config.js 文件,可以新建一个... 五、语法基础 5.1 基本用法 在Svelte应用中,一个.svelte就是一个组件,它由html、css和js代码组成,类似vue的写法。

3.8K10

干货 | 携程机票前端Svelte生产实践

作者简介 shuan feng,携程高级前端开发工程师,关注性能优化、低代码、svelte等领域。 一、技术调研 最近几年,前端框架层出穷。近两年,前端圈又出了一个新宠:Svelte。...作者是 Rich Harris,也就是 Ractive, Rollup 和 Buble的作者,前端界的“轮子哥”。 通过静态编译减少框架运行时的代码量。...这就是Svelte采用的办法。Svelte会在代码编译的时候将每一个状态的改变转换为对应DOM节点的操作,从而在组件状态变化的时候快速高效地对DOM节点进行更新。...你编写的应用代码在用诸如 Webpack 或 Rollup 等工具打包的时候会被直接转换为 JavaScript 对 DOM 节点的原生操作,从而让 bundle.js 包含框架的 runtime。...Svelte中则是采用了{#if conditions}、{:else if}、{/if},属于Svelte对于HTML的增强。

2.1K10

轻量级工具Vite到底牛在哪, 一文全知道

背景与工作方式 在过去Webpack、Rollup 等构建工具作为主场明星时,我们的代码都是基于ES Module 规范去写的。...例如已经基本上将框架编译掉的Svelte或是Snowpack,这些工具能够利用现代JavaScript功能(例如ES模块)来提供更平稳,更快速的开发体验,几乎不需要配置,也不需要依赖于太多已安装软件包。...选项包括: vanilla vue vue-ts react react-ts preact preact-ts lit-element lit-element-ts svelte svelte-ts...鉴于Vite使用anindex.html作为切入点并构建为纯HTML,CSS和JavaScript的特性,毫无疑问它是一个是用于静态站点和潜在的Jamstack应用程序的出色工具。...如果我们有特定的需求,Vite允许我们自行设置,可以覆盖Rollup和各种Rollup插件的配置。 项目中绑定的工具越多,整体就会越脆弱。

4K40

Vite2.0 正式发布,了解一下文档

Vite2自2月17号份发布之后,收获了前端圈的一片哀嚎:学不动了…… ,你得学! Vite(法语意思是 “快”,发音为 /vit/,类似 veet)是一种全新的前端构建工具。...Vite 利用浏览器原生的 ES 模块支持和用编译到原生的语言开发的工具(如 esbuild)来提供一个快速且现代的开发体验。...优化的构建 可选 “多页应用” 或 “库” 模式的预配置 Rollup 构建 ? 通用的插件 在开发和构建之间共享 Rollup-superset 插件接口。 ?...template vue 支持的模板预设包括: vanilla vue vue-ts react react-ts preact preact-ts lit-element lit-element-ts svelte...svelte-ts 查看 @vitejs/create-app 获取每个模板的更多细节。

89520

都快2020年,你还没听说过SvelteJS?

其实回想一下Web开发的历史,很早之前在用Jquery和Bootstrap一把梭的时候,我们的代码不就是包含runtime的吗?...这恰恰就是Svelte要做的东西,它采用了Compiler-as-framework的理念,将框架的概念放在编译时而不是运行时。...你编写的应用代码在用诸如Webpack和Rollup等工具打包的时候会被直接转换为JavaScript对DOM节点的原生操作,从而让bundle.js包含框架的runtime。...Svelte会在代码编译的时候将每一个状态的改变转换为对应DOM节点的操作,从而在组件状态变化的时候快速高效地对DOM节点进行更新。...•public文件夹,这个文件夹是用来存储项目的静态文件(index.html, global.css和favicon.png)和rollup编译生成的静态文件(build文件夹底下的bundle.js

3.1K10

一篇文章说清 webpack、vite、vue-cli、create-vue 的区别

vue-cli 官网:https://cli.vuejs.org/zh/index.html Vue CLI 的包名称由 vue-cli 改成了 @vue/cli vue-cli 是 Vue 早期推出的一款脚手架...create-vue 官网:https://staging-cn.vuejs.org/guide/quick-start.html#with-build-tools create-vue 是 Vue3...JavaScript TypeScript vanilla vanilla-ts vue vue-ts react react-ts preact preact-ts lit lit-ts svelte...svelte-ts rollup 官网:https://rollupjs.org/guide/en/ rollup 是一种打包工具,特点就是,打的包非常精简,体积小。...webpack core 因为只针对打包预设场景,所以设计得极其灵活,局限于针对 web 打包,几乎所有可配置的环节都做成了可配置的。这种极度的灵活性对于一些特定场景依然不可替代。

64120

新一代构建工具(1):对比rollupparcelesbuild—esbuild脱颖而出

天前10年前​编辑添加图片注释,超过 140 字(可选)rolluprollup就是一个非常优秀的bundler,rollup有着很多非常优良的性质treeshaking支持非常好,也支持cjs的tree...编辑切换为居中添加图片注释,超过 140 字(可选)它是用 Go 语言编写的,并可以编译为本地代码。...编辑切换为居中添加图片注释,超过 140 字(可选)Esbuild适用情境esbuild 颠覆了前端工具的世界。在大型项目中增加了几倍的编译速度是非常实用的。...事实上,我第一次听说Snowpack 就是在Svelte Submit 2020, Rich Harris 的 未来的网页开发。...在esbuild 专注在编译速度,Snowpack 专注开发伺服器。Vite 则提供两者;完整的开发伺服器和使用Rollup 进行优化编译

2.4K20

新一代构建工具的比较

我创建了一个 src/app.jsx 文件和一个 dist/index. html 文件。然后,我使用以下命令将应用程序编译成 dist/bundle.js 文件: `....还有一个 Snowpack 插件可用于 Vue 单文件组件,当然也可用于 Svelte 组件。此外,Snowpack 编译了打字稿,但是对于类型检查我们需要打字稿插件。...与其非捆绑的理念一样,Snowpack 在捆绑中包含图片作为数据 url。...用于编译成 JavaScript 的文件(例如: TypeScript、 JSX、 JSON、。真的吗。Svelte) ,它将每个单独的文件转换为一个单独的浏览器友好的 JavaScript 模块。...然而,wmr 先生的构建步骤可以用 Rollup 插件工作,开发服务器可以用 Polka/Express 中间件配置,因此可以使用这些来将导入转换为 Vue 和 Svelte 组件。

2.3K20

Vite 学习(一) - 介绍

特点 快速的冷启动(使用了 esbuild 编译) 即时的模块热更新 真正的按需编译(利用原生能力,不能打包重新构建) 社区成本低(兼容 rollup 插件) 原理:利用 ES6 的 import 会发送请求去加载文件的特性...接下来对这两个工具做个大概对比: webpack vs vite webpack 可以实现开发、构建、打包;vite 只是应用于开发、构建、阶段,打包依赖于 rollup 工具。...,所以速度快很多 vite 解析实现过程如下: 开发服务器使用 http + connect 构建服务 通过多种中间件处理请求资源;也会遍历 html 节点,将元素的 src 属性添加上 base 前缀...但是 vite 发展势头正猛,相信社区发展也只是时间问题 vite 的打包目前还依赖于 rollup vite 针对 vue,react, svelte 都有提供基础模板 简单使用 通过 vite 创建项目...可能会提示你全局安装 @vitejs/create-app) vanilla 无模板原生模式 > vue vue3 react preact lit svelte

49621

Svelte 3 快速开发指南(对比React与vue)

嗯,它有一些有趣的卖点: Svelte编译器,而不是像 React 或 Vue 这样的依赖项 Svelte 似乎需要更少的代码,用 React 开发同样的功能代码量大约会多 40% (来源:Rich...Harris) Svelte 没有 virtual DOM,它会被编译成最小的 “vanilla” JavaScript,并且看起来比其他库性能更好 在下面的教程中,我更关注 Svelte 3 的核心概念...你会看到一堆文件: App.svelte:程序的根组件 rollup.config.js:Rollup 的配置,即 Svelte 选择的模块捆绑器 现在打开App.svelte并查看: 1 这是一个 Svelte 组件!真的,它需要的只是一个脚本标签、一个样式标签和一些 HTML。 name 是一个变量,然后在 HTML 中的花括号之间插入并使用。...Svelte 3 tutorial reactivity 这是怎么回事?赶快进入下一节! 反应式编程 Svelte 处理计算值的方式可能一开始看起来直观。

12.1K30

对话Svelte未来,Rust 编译器?构建大型应用?

随后 Rich 在开源的道路上一直前行,还推出了另外两个比较有名的库 RollupSvelte 。...(在 Vercel 的工作就是搞开源,这真是令人眼红啊) 3.打一份工的好处就是可以拥有更多的时间投入开源事业,Rich 也明确表示,之前的兼职状态维护Ractive就让他精疲力尽,他希望同样的情况发生在...(还有点可爱,知道自己老是挖坑,但是埋坑) 但是他还是谈论了一些目前正在着手做的事情,利用 Rust 重写很多工具链,来提高编译速度。...还提到重要的一点,很多人批评/担心 Svelte 是因为Svelte编异输出代码的时候,Svelte 的体积随着组件数量增长曲线会比其他框架更加陡峭。...因此 Rich 说已经有了一种新的编译方案,能够使得编译后的代码小于输入代码,真实令人期待~ 还谈论到目前正在考虑类似 Error boundaries、Suspense、React Server Component

59510

JavaScript 新一代构建工具对比

我创建了一个 src/code秘密花园.jsx 文件和一个 dist/index.html 文件。然后,我使用下面的命令将app编译成一个 dist/bundle.js 文件。 ....对于编译成 JavaScript 的文件(例如TypeScript, JSX, JSON, .vue, .svelte),它将每个单独的文件转换成一个独立的浏览器友好的 JavaScript 模块。...wmr 有插件,它公开了一个插件API,支持 Rollup 插件的构建步骤。docs 上有越来越多的 wmr 专用例子,包括一个对HTML进行最小化的插件,还有一个基于文件系统的路由功能。...Vue单文件组件和Svelte组件都没有内置支持。...不过,wmr 的构建步骤可以和 Rollup 插件一起使用,开发服务器也可以配置Polka/Express中间件,所以可以用这些来将导入的文件转换成 Vue 和 Svelte 组件。

1.8K10

为什么用 Svelte 写一个小程序如此快速?我用10分钟就搞定了!

GitHub的第一次提交是在2016年末,它的创造者是Rich Harris,一个开源奇才,他最著名的另一项发明是Rollup。...Svelte的语法是HTML的超集,所以任何在HTML文件中有效的内容在Svelte文件中也是有效的。 现在的问题是如何把动态的部分放进去。...Svelte对.svelte文件实际做了什么,它什么时候处理它? 答案是: Svelte实际上是一个编译器!在代码加载到浏览器之前,它就完成了大部分工作。...因此,编译输出将用对$$invalidate函数的调用来包装这些赋值,该函数将为下一次浏览器绘制安排对该组件的重新渲染。...同时,由于Svelte非常接近普通的HTML和JavaScript,所以很容易将任何现有的常规HTML/JavaScript库集成到你的代码库中,而不需要包装器库。 关于工具,Svelte看起来不错。

2.6K10

前端打包、编译和优化

打包目前前端世界主流的前 3 名模块打包器仍然是 Webpack 、 Rollup 和 Esbuild 。...Turbopack 还使用请求级编译方法来只编译请求的代码。如果浏览器请求某些 CSS,则只会编译该 CSS,而编译引用的 images。采用请求级编译有助于减少请求数量并能够快速编译它们。...未来计划发布独立的 CLI、插件 API,并支持 Svelte 和 Vue 等其他框架。...源码通常包含一些并非直接是 JavaScript 的文件,需要转换(例如 JSX,CSS 或者 Vue/Svelte 组件),时常会被编辑。...对于生产环境,Vitejs 使用 Rollup 进行打包。文档:https://vitejs.cn/编译工具编译工具(Compiler)可以理解为将一种语言编写的源代码转换为另一种语言的过程。

1.9K61
领券