uniapp+vue3 引入jsx
时间: 2024-09-25 19:14:38 浏览: 83
uniapp + vue3 + TypeScript + pinia + uviewplus
在uni-app (原DCloud) 中使用 Vue3 并引入 JSX,是为了利用 React 的语法特性,让 Vue 的模板编写更直观和简洁。以下是步骤:
1. 安装预处理器插件:首先需要安装 `vue-template-compiler` 和 `vjsx` 插件,可以使用 npm 或者 yarn 进行安装:
```bash
npm install @vue/compiler-sfc vjsx --save-dev
```
2. 配置 Vue 文件处理:在项目配置文件 `.vue.config.js` 中,添加对 JSX 支持的配置:
```javascript
module.exports = {
transpileDependencies: ['@vue/cli-plugin-vuex', 'vjsx'],
chainWebpack: config => {
config.module.rules
.get('vue') || config.module.rule('vue')
.use('vue-loader')
.tap(options => {
options.transformers = {
...options.transformers,
jsx: { compiler: require('vjsx/transformer') },
};
return options;
});
}
};
```
3. 使用 JSX 标签:现在可以在 Vue 组件中直接使用 `<script jsx>` 指令导入并使用 JSX 语法了:
```html
<template>
<div>
{/* 使用 JSX */}
<div jsx="{ props: { message: 'Hello from Vue with JSX!' } }">Hello</div>
</div>
</template>
<script jsx lang="jsx">
import { h } from "vue";
export default {
components: {},
setup() {
return {
message: 'Hello from setup method',
};
},
};
</script>
```
阅读全文