前端vue react,简述Vue组件使用的3个步骤-

  前端vue react,简述Vue组件使用的3个步骤?

  如何在react项目中运行vue组件?以下文章通过实例介绍react项目中运行vue组件的方法,希望对你有所帮助!

  本文背景来自采访,被问到,vue和react组件假如需要互通和复用,如何优雅的实现?

  除了开发人员手动转移代码。目前我能想到的解决办法只有两个。

  方案1: vue代码和react代码相互转换(组件库同步)

  选项2:直接让vue组件在React项目中运行,反之也可以。

  【相关推荐:Redis视频教程,vuejs教程】

  先看实现效果

  vue组件在reat中渲染正常,我还有点击了按钮 3下vue的响应和render也都正常

  

具体如何实现?

  实现原理

  引入vue完整版(如果考虑性能,可以按需引入)

  等到componentDidMount阶段,并挂载div id=vueApp/。

  在新Vue(.).$mount(#vueApp )

  从 vue/dist/vue . min . js //导入vue完整版,否则无法解析vue的组件对象语法。

  导出默认类应用程序扩展组件{

  施工员(道具){

  超级(道具)

  }

  componentidmount(){

  const Foo={

  模板:` 1

  差异

  H1我是vue: {{aaa}}/h1

  H1我是vue: {{aaa}}/h1

  H1我是vue: {{aaa}}/h1

  按钮@click=aaa 按钮/按钮

  /div

  `,

  data () {

  返回{

  aaa: 2222

  }

  }

  }

  新Vue({

  render: h=h(Foo),

  }).$mount(#vueApp )

  }

  render() {

  返回(

  差异

  H1目前在react项目/h1中。

  H1目前在react项目/h1中。

  vue组件将在下面呈现。

  div id=vueApp /

  /div

  )

  }

  }注意:

  如果只需支持vue的组件选项对象的话,那么不用配置webpack,就完了

  vue的组件选项对象是指:

  const Foo={

  模板:` 1

  差异

  H1我是vue: {{aaa}}/h1

  H1我是vue: {{aaa}}/h1

  H1我是vue: {{aaa}}/h1

  按钮@click=aaa 按钮/按钮

  /div

  `,

  data () {

  返回{

  aaa: 2222

  }

  }

  }

高级版

  这里的高级版是指:需要支持 .vue文件/组件(上面的demo,直接是组件选项对象,没有.vue文件)

  比如:(继续用上面的演示,改几行)

  改为导入。vue文件:从导入Foo。/foo . vue ;从 vue/dist/vue . min . js //导入vue完整版,否则无法解析vue的组件对象语法。

  从导入Foo。/foo . vue ;

  导出默认类应用程序扩展组件{

  .

  componentidmount(){

  新Vue({

  render: h=h(Foo),

  }).$mount(#vueApp )

  }

  .

  }此时要想生效,需要配置vue-loader

  https://vue-loader.vuejs.org/guide/#manual-setup//在webpack.config.js,官网

  const { VueLoaderPlugin }=require( vue-loader )

  模块.导出={

  模式:“开发”,

  模块:{

  规则:[

  {

  测试:/。vue$/,

  装载机:“vue装载机”

  }

  ]

  },

  插件:[

  //确保包含魔术插件

  新VueLoaderPlugin()

  ]

  }注意点

  建议大家test的时候,不要用react的脚手架起的项目,从零开始配置webpack.config.js的react项目。

  当我目前使用最新版本的scaffolding时,运行eject后,在webpack.config.js中写入会给出错误,因为VueLoaderPlugin与oneOf的语法不兼容。

  如果不需要解析。vue文件,直接使用vue的组件选项对象语法,那么就不需要额外配置vue-loader了。

  

总结

  建议大家test的时候,不要用react的脚手架起的项目,从头开始配置webpack.config.js的react项目。

  如果不用解析.vue文件的话,直接用vue的组件选项对象语法的话,那么不用额外的配置vue-loader

  最终在对比一下,vue项目中使用react组件,和, react项目中使用vue组件,配置上的区别!

  有必要配置webpack.config.js的加载器吗?要在vue项目中使用react组件yes,需要配置babel-loader编译.jsx文件,还需要额外注意babel-loader的选项。如果不需要解析。vue文件,可以直接使用vue的no语法。如果需要组件选项对象,需要配备vue-loader,了解更多编程知识。请访问:编程视频!这就是react项目中vue组件的运行方式。更多方法详情请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: