zoukankan      html  css  js  c++  java
  • vue3 CompositionAPI 函数以及变量抽离成单独的文件

    新建hooks.ts

    import { ref, onMounted } from 'vue'

    export default function useRooks() {
      const list = ref<any>([])
      const showShare = ref<boolean>(false)
      const onShow = () => {
        showShare.value = true
      }

      const onHandle = () => {
        getdata()
      }

      let time = 1
      let data = [{}]
      const getdata = () => {
        time = time + 1
        console.log(time)
        new Promise((resolve, reject) => {
          data = [...data, {}]
          list.value = data
          resolve(true)
        })
      }

      onMounted(() => {
        getdata()
      })

      return {
        getdata,
        list,
        onShow,
        showShare,
        onHandle,
      }
    }

    <template>
      <div>
        <button @click="onShow">分享</button>
        <button @click="onHandle">测试hooks</button>
      </div>
    </template>

    <script lang="ts">
    import { defineComponent } from 'vue'
    import useRooks from './hooks/index'
    export default defineComponent({
      components: { share, Rotate },
      setup() {
        const { list, getdata, showShare, onShow, onHandle } = useRooks()
        return {
          showShare,
          onShow,
          list,
          getdata,
          onHandle,
        }
      },
    })
    </script>

    <style lang="scss" scoped></style>
  • 相关阅读:
    SpringCloud--Ribbon--源码解析--Ribbon入口实现
    SpringCloud--Ribbon--使用demo
    装饰着模式(Decorator Pattern)
    SpringCloud--Eureka--配置
    SpringCloud--Eureka--原理及源码解析
    SpringCloud--Eureka--搭建
    观察者模式(Observer Pattern)
    策略模式(Strategy Pattern)
    xeus-clickhouse: Jupyter 的 ClickHouse 内核
    Spring的学习与实战(续)
  • 原文地址:https://www.cnblogs.com/boonook/p/15102264.html
Copyright © 2011-2022 走看看