vue-demi

简介: vue-demi

事物都是互相妥协的。就是冰山也会时而消融,时而重新凝聚。——爱默生

分享一个vue

https://github.com/vueuse/vue-demi

用来解决编写的代码在vue2vue3之间的兼容问题

安装:

npm i vue-demi

然后修改package.json,将vue@vue/composition-api添加到peerDependencies

{
  "dependencies": {
    "vue-demi": "latest"
  },
  "peerDependencies": {
    "@vue/composition-api": "^1.0.0-rc.1",
    "vue": "^2.0.0 || >=3.0.0"
  },
  "peerDependenciesMeta": {
    "@vue/composition-api": {
      "optional": true
    }
  },
  "devDependencies": {
    "vue": "^3.0.0" // or "^2.6.0" base on your preferred working environment
  },
}

使用时,就从vue-demi

import { ref, reactive, defineComponent } from 'vue-demi'

例如这个例子:

https://github.com/vueuse/vue-demi/blob/main/examples/%40vue-demi/use-mouse/src/index.ts

import { ref, onMounted, onUnmounted } from 'vue-demi'
export function useMouse() {
  const x = ref(0)
  const y = ref(0)
  const update = (e: MouseEvent) => {
    x.value = e.pageX
    y.value = e.pageY
  }
  onMounted(() => {
    window.addEventListener('mousemove', update)
  })
  onUnmounted(() => {
    window.removeEventListener('mousemove', update)
  })
  return {
    x,
    y
  }
}
相关文章
|
8月前
|
索引
第10节:Vue3 论点
第10节:Vue3 论点
38 0
|
JavaScript
114.【Vue-细刷-05】(五)
114.【Vue-细刷-05】
58 0
|
JavaScript 前端开发 容器
85.【Vue-细刷-01】(一)
85.【Vue-细刷-01】
71 0
|
8月前
|
JavaScript 前端开发 开发者
new Vue() 发生了什么
new Vue() 发生了什么
46 1
|
4月前
|
存储 缓存 JavaScript
Vue3比Vue2快在哪里?
本文分析了Vue 3相比Vue 2在性能提升的几个关键点,包括改进的diff算法、静态标记、静态提升、事件监听器缓存以及SSR渲染优化,这些改进使得Vue 3在处理大规模应用时更加高效。
45 1
|
8月前
|
缓存 JavaScript 前端开发
Vue 3中toRaw和markRaw的使用
Vue 3中toRaw和markRaw的使用
147 0
|
7月前
|
JavaScript 前端开发 API
什么是vue
什么是vue
75 4
|
存储 JavaScript
85.【Vue-细刷-01】(五)
85.【Vue-细刷-01】
40 0
|
8月前
|
JavaScript 前端开发 编译器
Vue3 究竟好在哪里?
Vue3 究竟好在哪里?
128 0