广告
返回顶部
首页 > 资讯 > 精选 >vue.extend如何使用
  • 357
分享到

vue.extend如何使用

2023-07-05 09:07:20 357人浏览 安东尼
摘要

本文小编为大家详细介绍“Vue.extend如何使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue.extend如何使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1.Vue.extend的使用参数:对

本文小编为大家详细介绍“Vue.extend如何使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue.extend如何使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

1.Vue.extend的使用

  • 参数:对象

  • 用法:使用Vue构造器,创建一个“子类”,参数是一个包含组件选项的对象,其中,data选项中必须是函数

  • 描述:Vue.extend返回的是一个“扩展实例构造器”,也就是预设了部分选项的Vue的实例构造器,它常常服务于Vue.component用来生成组件,可以简单理解为当在模板中遇到该组件作为标签的自定义元素时,会自动调用“扩展实例构造器”来生产组件实例,并挂在到自定义元素上

  • Vue.extend属于全局api

  • Vue.extend通常用于独立主键开发

  • Vue.extend通常和Vue.extend + $mount一起使用

2.在什么情况下使用Vue.extend

  • 组件模板都是事先就创建好的,要是我想从接口动态渲染组件怎么办?

  • 有内容都是在 #app 下渲染,注册组件都是在当前位置渲染。如果我要实现一个类似于 window.alert() 提示组件要求像调用 js 函数一样调用它,该怎么办?

  • 全局组件

3.举例

比如我们有一个要求就是:实现一个类似于element ui 的 Toast 单框,而element ui 的 Toast 弹框又不能满足我们现阶段的需求,那么就可以使用Vue.extend + $mountl来实现。

如下图

vue.extend如何使用

如上图所示

建立一个Toast.vue 在这个里面写你想要的Toast 弹框样式

<template>  <div class="CustToast" :class="type" v-if="showToast">    <span class="icon">      <img :src="iconSrc" />    </span>    {{ message }}  </div></template><script>export default {    name: 'CustToast',  data () {    return {      showToast: true,      type: 'nORMal',      message: '消息提示',      duration: 3000    }  },  computed: {    iconSrc () {      window.console.log('当前类型', this.type)      const tipType = ['normal', 'success', 'warning', 'fail']      if (tipType.includes(this.type)) {        return require(`@/assets/img/common/${this.type}.svg`)      } else {        // eslint-disable-next-line no-throw-literal        throw 'Toast type数据只允许为 normal, success, warning, fail 四种其中的一种,默认为normal'      }    }  }}</script><style scoped>.CustToast {  position: fixed;  left: 50%;  top: 50%;  background: rgb(233, 233, 235);  padding: 10px;  border-radius: 5px;  transform: translate(-50%, -50%);  animation: show-toast 0.2s;  color: #909399;  overflow: hidden;  display: flex;  align-items: center;}@keyframes show-toast {  from {    opacity: 0;  }  to {    opacity: 1;  }}.success {  color: #67c23a;  background: rgb(225, 243, 216);}.warning {  color: #e6a23c;  background: rgb(250, 236, 216);}.fail {  color: #f56c6c;  background: rgb(253, 226, 226);}.icon img {  width: 20px;  height: 20px;  margin-top: 3px;  margin-right: 4px;}</style>

新建一个index.js文件

vue.extend如何使用

在点js 文件中写一下代码

import vue from 'vue'// 导入自定义到Toast组件import CustToast from './CustToast.vue'// 生成一个扩展实例构造器const ToastConstructor = vue.extend(CustToast)// 定义弹出组件的函数 接收三个参数 消息 toast类型 显示时间function showToast (message, type = 'normal', duration = 2000) {  // 实例化一个 CustToast.vue  const _toast = new ToastConstructor({    data () {      return {        showToast: true,        type: type,        message: message,        duration: duration      }    }  })  // 把实例化的 CustToast.vue 添加到 body 里  const element = _toast.$mount().$el  document.body.appendChild(element)  // duration时间到了后隐藏  setTimeout(() => { _toast.showToast = false }, duration)}// 需要在main.js 里面使用 Vue.use(showToast);showToast.install = (Vue) => {  // 将组件注册到 vue 的 原型链里去,  // 这样就可以在所有 vue 的实例里面使用 this.$toast()  Vue.prototype.$toast = showToast}// 导出export default showToast

在你的vue项目的 main.js 中导入就可以全局使用了

vue.extend如何使用

使用

vue.extend如何使用

使用效果

vue.extend如何使用

读到这里,这篇“vue.extend如何使用”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网精选频道。

--结束END--

本文标题: vue.extend如何使用

本文链接: https://www.lsjlt.com/news/350758.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • vue.extend如何使用
    本文小编为大家详细介绍“vue.extend如何使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue.extend如何使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1.Vue.extend的使用参数:对...
    99+
    2023-07-05
  • Vue中Vue.extend()的使用及解析
    目录Vue Vue.extend()的使用应用场景简单实用使用Vue.extend()编写vue插件Vue.extend()如何编程式使用组件呢具体使用Vue Vue.extend(...
    99+
    2022-11-13
    Vue Vue.extend Vue.extend的使用 Vue使用Vue.extend()
  • 关于vue.extend的使用及说明
    目录1.Vue.extend的使用2.在什么情况下使用Vue.extend3.举例总结1.Vue.extend的使用 参数:对象用法:使用Vue构造器,创建一个“子类&r...
    99+
    2023-03-06
    关于vue.extend vue.extend的使用 vue.extend的说明
  • vue使用Vue.extend创建全局toast组件实例
    目录Vue.extend创建全局toast组件关于vue.extend的理解应用基本概念官网基本示例应用总结Vue.extend创建全局toast组件 src -> compo...
    99+
    2023-03-06
    vue使用Vue.extend Vue.extend创建全局 Vue.extend toast组件
  • vue怎么使用Vue.extend创建全局toast组件
    本篇内容主要讲解“vue怎么使用Vue.extend创建全局toast组件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue怎么使用Vue.extend创建全局toast组件”吧!Vue.ex...
    99+
    2023-07-05
  • vue19如何组建Vue.extend component、组件模版、动态组件
    这篇文章主要介绍vue19如何组建Vue.extend component、组件模版、动态组件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体代码如下所示:<!DOCTYPE...
    99+
    2022-10-19
  • vue使用Vue.extend方法仿写个loading加载中效果实例
    目录需求描述效果图代码实现第一步,新建loading组件第二步,新建index.js文件第三步,在main.js中引入之第四步,命令式调用Vue.extend方法的理解总结需求描述 ...
    99+
    2022-11-13
  • 如何巧用Vue.extend继承组件实现el-table双击可编辑(不使用v-if、v-else)
    目录问题描述效果图代码思路代码思路中的三个问题解答问题一:如何创建一个el-input标签?问题二三:el-input标签和span标签的来回替换恢复完整代码目录结构用于继承的el-...
    99+
    2022-11-13
  • 如何使用fastcache
    小编给大家分享一下如何使用fastcache,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!VnTrader 2.0版本有不少提速措施,其中lru_cache是提高...
    99+
    2023-06-02
  • crystaldiskinforh如何使用
    这篇文章主要介绍“crystaldiskinforh如何使用”,在日常操作中,相信很多人在crystaldiskinforh如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解...
    99+
    2023-02-09
  • Cython如何使用
    这篇文章主要讲解了“Cython如何使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Cython如何使用”吧!Cython是一个编程语言,它通过类似Python的语法来编写C扩展并可以被P...
    99+
    2023-06-27
  • RPM如何使用
    这篇文章主要介绍了RPM如何使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇RPM如何使用文章都会有所收获,下面我们一起来看看吧。RPM Package Manager (RPM) 是一个强大的命令行驱动的软...
    99+
    2023-06-27
  • HTTPie如何使用
    今天小编给大家分享一下HTTPie如何使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。HTTPie 是一个 HTTP 的命...
    99+
    2023-06-28
  • np.ones如何使用
    这篇文章主要介绍了np.ones如何使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇np.ones如何使用文章都会有所收获,下面我们一起来看看吧。概述np.ones()函数返回给定形状和数据类型的新数组,其中...
    99+
    2023-07-05
  • np.unique()如何使用
    本篇内容主要讲解“np.unique()如何使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“np.unique()如何使用”吧!一、np.unique() 介绍对于一维数组或者列表,np.un...
    99+
    2023-07-05
  • MySqlBulkLoader如何使用
    这篇文章主要介绍了MySqlBulkLoader如何使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MySqlBulkLoader如何使用文章都会有所收获,下面我们一起来看看吧。一、MySqlBulkLoad...
    99+
    2023-07-02
  • webpack如何使用
    本篇内容介绍了“webpack如何使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!webpack介绍和使用一、webpack介绍1、由来由...
    99+
    2023-07-02
  • numpy.insert()如何使用
    这篇文章主要介绍“numpy.insert()如何使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“numpy.insert()如何使用”文章能帮助大家解决问题。numpy.insert()主要用于...
    99+
    2023-07-05
  • WebComponent如何使用
    本篇内容介绍了“WebComponent如何使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!正文WebComponent 是官方定义的自定...
    99+
    2023-07-05
  • DebugView如何使用
    要使用DebugView,您可以按照以下步骤操作:1. 下载DebugView工具:您可以从Sysinternals Suite官方...
    99+
    2023-09-11
    DebugView
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作