English | 简体中文
setupin 允许你在 HTML 中使用 Vue SFC 语法。
利用sfc2esm,在运行时编译为esm格式的vue代码,并动态执行。
vue esm 写法复杂
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>esm</title>
<style>
button {
font-size: larger;
}
</style>
</head>
<body>
<div id="app">
<button @click="count++">{{ count }}</button>
</div>
<script type="module">
import { createApp, defineComponent, ref } from 'https://unpkg.com/vue/dist/vue.esm-browser.js';
const App = defineComponent(() => {
const count = ref(0);
return {
count
};
});
createApp(App).mount('#app')
</script>
</body>
</html>
vue sfc 需要编译
<script setup>
import { ref } from 'vue'
const count = ref(0)
</script>
<template>
<button @click="count++">{{ count }}</button>
</template>
<style>
button {
font-size: larger;
}
</style>
setupin 将其合二为一
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>setupin</title>
<script src="https://unpkg.com/setupin"></script>
</head>
<script setup>
import { ref } from 'vue'
const count = ref(0)
</script>
<template>
<button @click="count++">{{ count }}</button>
</template>
<style>
button {
font-size: larger;
}
</style>
除了<head>之外和Vue SFC写法完全一致
-
便于学习 为初学者提供一个友好的环境,帮助他们轻松上手 Vue 的核心用法。
-
简易开发 提供便捷的方式,助力快速开发小网页,无需繁琐的配置。
-
快速体验 让用户可以快速在 HTML 中尝试 Vue 的新特性,感受其魅力。
在 stackblitz 上尝试一下吧!
<!-- 默认是dev版本 -->
<script src="https://unpkg.com/setupin"></script>
<!-- dev -->
<script src="https://unpkg.com/setupin/dist/main.js"></script>
<!-- prod -->
<script src="https://unpkg.com/setupin/dist/main.prod.js"></script>