You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在CDN模式下配置并使用Vue 3的JSX语法进行开发?

在CDN模式下使用Vue 3 + JSX的配置方案

1. 引入必要CDN资源

在HTML中引入三个核心资源:Vue 3运行时库、浏览器端编译JSX的babel-standalone,以及Vue官方的JSX编译插件:

<!-- Vue 3 核心库 -->
<script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
<!-- Babel独立版,用于浏览器端编译JSX -->
<script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>
<!-- Vue 3 JSX编译插件 -->
<script src="https://unpkg.com/@vue/babel-plugin-jsx@1/dist/babel-plugin-jsx.min.js"></script>

2. 配置Babel识别Vue JSX

编写JSX代码的<script>标签需要指定type="text/babel",并通过data-presets和data-plugins配置Babel参数,确保它能正确解析Vue的JSX语法:

<script type="text/babel" data-presets="env" data-plugins="@vue/babel-plugin-jsx">
  // 在这里编写你的Vue JSX代码
</script>

3. 完整代码示例

下面是一个可直接运行的Demo,包含组件定义、JSX渲染逻辑:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <title>Vue 3 CDN + JSX Demo</title>
</head>
<body>
  <div id="app"></div>

  <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
  <script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>
  <script src="https://unpkg.com/@vue/babel-plugin-jsx@1/dist/babel-plugin-jsx.min.js"></script>

  <script type="text/babel" data-presets="env" data-plugins="@vue/babel-plugin-jsx">
    const { createApp, defineComponent, ref } = Vue;

    // 用JSX定义带状态的组件
    const Counter = defineComponent({
      setup() {
        const count = ref(0);
        const increment = () => count.value++;
        
        // 返回JSX渲染函数
        return () => (
          <div>
            <p>当前计数:{count.value}</p>
            <button onClick={increment}>点击加1</button>
          </div>
        );
      }
    });

    // 挂载根应用
    createApp({
      render() {
        return (
          <div>
            <h1>Vue 3 CDN + JSX 开发</h1>
            <Counter />
          </div>
        );
      }
    }).mount('#app');
  </script>
</body>
</html>

注意事项

  • 版本兼容:@vue/babel-plugin-jsx的版本需与Vue 3版本匹配,建议使用最新稳定版。
  • 性能限制:浏览器端实时编译JSX会有额外性能开销,仅适合开发阶段或小型项目;生产环境建议提前将JSX编译为普通JavaScript。
  • 语法支持:若需使用Composition API语法糖(如<script setup>),CDN模式下暂不支持,需使用传统的setup函数写法。

内容的提问来源于stack exchange,提问作者XGG

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 03:17:05