vuera--在vue中使用react组件

项目背景介绍,由于旧项目用的是vue2但公司组件库是react,现在项目需要迭代升级,不想自己重新写组件从而使用vuera来在vue中使用react组件库组件

  1. 安装vuera

    yarn add vuera
    
    npm install --save vuera
    
  2. 安装React

    //安装react
    npm install --save react react-dom
    //下载依赖识别react-jsx语法
    npm install @babel/plugin-transform-react-jsx
    //在babel.config.js中添加依赖
    module.exports = { 
      plugins: ["@babel/plugin-transform-react-jsx"]
    };
    
  3. 在vue,mian.js中引用vuera

    import {  VuePlugin } from 'vuera'
    Vue.use(VuePlugin);
    
  4. react文件

    import React from 'react'
    function myReactComponent(props) { 
      const {  message } = props
      function childClickHandle() { 
        props.onMyEvent('React子组件传递的数据')
      }
      return (
        <div>
          <h2>{  message }</h2>
          <button onClick={  childClickHandle }>向Vue项目传递React子组件的数据</button>
        </div>
      )
    }
    export default myReactComponent
    
  5. vue文件

    <template>
        <div>
            <h1>I'm a Vue component</h1>
            <my-react-component :message="message" @onMyEvent="parentClickHandle"/>
        </div>
    </template>
    <script>
        // 引入React组件
        import MyReactComponent from './myReactComponent'
        export default { 
            components: { 
                'my-react-component': MyReactComponent  // 引入React组件
            },
            data() { 
                return { 
                    message: 'Hello from React!',
                }
            },
            methods: { 
                parentClickHandle(data){ 
                    console.log(data);
                }
            },
        }
    </script>
    
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值