返回顶部
首页 > 资讯 > 精选 >vue映射的方法与怎么混入使用
  • 590
分享到

vue映射的方法与怎么混入使用

2023-06-30 00:06:57 590人浏览 安东尼
摘要

这篇文章主要介绍了Vue映射的方法与怎么混入使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vue映射的方法与怎么混入使用文章都会有所收获,下面我们一起来看看吧。vue映射方法与混入使用v-selec

这篇文章主要介绍了Vue映射的方法与怎么混入使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vue映射的方法与怎么混入使用文章都会有所收获,下面我们一起来看看吧。

vue映射方法与混入使用

v-select中的内容封装

场景:当在不同的组件中共同使用一些select的"内容"就可以将这些内容封装在一个文件里

1.cig2.0/src/contants.js

export const data = {  whether: [    //是/否    { value: 1, label: "是" },    { value: 0, label: "否" }  ],  hour: [    { value: "0", label: "0" },    { value: "1", label: "1" },    { value: "2", label: "2" },    { value: "3", label: "3" },    { value: "4", label: "4" },    { value: "5", label: "5" },    { value: "6", label: "6" },    { value: "7", label: "7" },    { value: "8", label: "8" },    { value: "9", label: "9" },    { value: "10", label: "10" },    { value: "11", label: "11" },    { value: "12", label: "12" },    { value: "13", label: "13" },    { value: "14", label: "14" },    { value: "15", label: "15" },    { value: "16", label: "16" },    { value: "17", label: "17" },    { value: "18", label: "18" },    { value: "19", label: "19" },    { value: "20", label: "20" },    { value: "21", label: "21" },    { value: "22", label: "22" },    { value: "23", label: "23" }  ],  //分钟  minute: [    { value: "0", label: "0" },    { value: "30", label: "30" }  ],};export function getValues(key) {  //debugger  return JSON.parse(jsON.stringify(data[key] || []));}

2.在需要使用select的组件里引入【混入】

在混入文件里返回封装的select的内容应用到组件中使用select的地方

引入混入:

import MixSearch from “@/mixins/mix-search.js”;let mixSearch = MixSearch(); //因为在mix-search.js文件里 export default 是一个function()mixins: [mixSearch]
import {getValues} from "@/contants.js"let cache = {}function saveCache(key, value) {    if (!key) return;    if (value) {        cache[key] = JSON.stringify(value)    } else {        if (!cache[key]) return        return JSON.parse(cache[key])    }}export default function (ext) {    ext = ext || {}    let mixin = {        data() {            return {                fullscreenLoading: false,                pageBean: {                    pageSize: 10,                    page: 1,                    showTotal: true                },                searchModel: JSON.parse(JSON.stringify(ext))            }        },        methods: {            async payload(fn, fail) {                try {                    this.fullscreenLoading = true;                    await fn()                } catch (e) {                    console.error(e)                }                this.fullscreenLoading = false;            },            geTKEyValues(key, opt) {                return getValues(key, opt)            },            // 映射字段            getSelectLabel(type, id) {                for (let i = 0; i < type.length; i++) {                    if (type[i].value == id) {                        return type[i].label                    }                }            }        },        created() {            let {pageBean, searchModel} = saveCache(this.$options.name) || {}            if (pageBean) {                this.pageBean = pageBean;                this.searchModel = searchModel;            }        },        beforeDestroy() {            saveCache(this.$options.name, {pageBean: this.pageBean, searchModel: this.searchModel})        }    }    return mixin}
 <div >                        <el-fORM-item label="更新时间期限:" class="dataTimeBox">                          <el-select                                  placeholder="请选择"                                  v-model="day.hour"                          >                            <el-option                                    v-for="(item,index) in getKeyValues('hour')"                                    :key="index"                                    :label="item.label"                                    :value="item.value"                            ></el-option>                          </el-select>                          <span> 时 </span>                          <el-select                                  placeholder="请选择"                                  v-model="day.minute"                          >                            <el-option                                    v-for="(item,index) in getKeyValues('minute')"                                    :key="index"                                    :label="item.label"                                    :value="item.value"                            ></el-option>                          </el-select>                          <span> 分</span>                        </el-form-item>                      </div>

vue混入的简单用法 

vue的官方文档:混入 (mixin) 提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能。一个混入对象可以包含任意组件选项。当组件使用混入对象时,所有混入对象的选项将被“混合”进入该组件本身的选项。 

简单的理解就是它可以制作一个可以复用的功能,可以复用到各个组件中,同时这个mixin功能可以使用vue组件里任意组件选项,比如data,method,watch,和各个生命周期函数。当需要运用的组件,引用它时,相当于把mixin的各个组件选项合并到引用的组件中。 

自定义混入

定义一个mixin文件,写入需要被复用的功能;

vue映射的方法与怎么混入使用

在需要使用混入功能的文件中引入;

vue映射的方法与怎么混入使用

注:混入中可以放一个类或多个类,也可以只放方法和功能,根据面向对象单一职责原则和开闭原则,排除掉放多个类,若是只放方法和功能,混入就失去类意义。

最后的总结是:混入里最好放一个类或者是多个类组合或聚合成的一个类。

组件内可以修改混入中的数据,混入文件中也可以直接修改对应组件中的数据;

vue映射的方法与怎么混入使用

vue映射的方法与怎么混入使用

全局混入

定义一个全局的mixin文件

vue映射的方法与怎么混入使用

项目main.js文件中引入定义的mixins文件

vue映射的方法与怎么混入使用

然后在项目中所有文件都可以直接使用混入中定义的方法

vue映射的方法与怎么混入使用

关于“vue映射的方法与怎么混入使用”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“vue映射的方法与怎么混入使用”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网精选频道。

--结束END--

本文标题: vue映射的方法与怎么混入使用

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

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

猜你喜欢
  • vue映射的方法与怎么混入使用
    这篇文章主要介绍了vue映射的方法与怎么混入使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vue映射的方法与怎么混入使用文章都会有所收获,下面我们一起来看看吧。vue映射方法与混入使用v-selec ...
    99+
    2023-06-30
  • 总结vue映射的方法与混入的使用过程
    目录vue映射方法与混入使用v-select中的内容封装vue混入的简单用法 自定义混入全局混入vue映射方法与混入使用 v-select中的内容封装 场景:当在...
    99+
    2024-04-02
  • vue中的mixins混入使用方法
    目录mixinsmixins理解使用方法全局混入局部混入mixins的使用方法的复用方法的覆盖合并生命周期mixins 混合 (mixins) 是一种分发 Vue 组件中可复用功能的...
    99+
    2024-04-02
  • vue中混入mixins的使用方法
    目录前言使用方法总结前言 Vue中有一个设置项叫做混入 (mixins), 它的使用是用来做代码复用的。同时, 这个mixins 也分为局部混入和全局混入 vue中的解释是这样的,如...
    99+
    2024-04-02
  • vue中的mixins怎么混入使用
    这篇文章主要介绍了vue中的mixins怎么混入使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vue中的mixins怎么混入使用文章都会有所收获,下面我们一起来看看吧。作用用简单的话去概括就是一种分发vue...
    99+
    2023-06-30
  • Vue混入与插件的使用介绍
    目录1. 混入2. 插件1. 混入 概述: 混入(mixins)是一种分发Vue组件中可复用功能的非常灵活的方式。混入对象可以包含任意组件选项。当组件使用混入对象时,所有混入对象的选...
    99+
    2024-04-02
  • vuejs中怎么使用mixin局部混入与全局混入
    这篇文章主要介绍“vuejs中怎么使用mixin局部混入与全局混入”,在日常操作中,相信很多人在vuejs中怎么使用mixin局部混入与全局混入问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vuejs中怎么使...
    99+
    2023-06-30
  • Vue中mixins混入的介绍与使用详解
    目录一、来自官网的描述二、如何创建Mixins三、项目中如何使用混入四、与vuex的区别五、与公共组件的区别一、来自官网的描述 混入 (mixins): 是一种分发 Vue 组件中可...
    99+
    2022-12-23
    Vue mixins混入 Vue mixins使用
  • Vue两个通信方式与动画过度及混入使用的方法是什么
    这篇文章主要介绍了Vue两个通信方式与动画过度及混入使用的方法是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue两个通信方式与动画过度及混入使用的方法是什么文章都会有所收获,下面我们一起来看看吧。一、全...
    99+
    2023-07-05
  • vue3  mixin 混入使用方法
    目录一、mixin 如何使用 ?二、mixin 使用时注意点2.1、使用 mixin 对象时,组件内部和 mixin 包含相同选项,如何处理呢?2.2、使用的 mixin 对象选项 ...
    99+
    2024-04-02
  • Vue中mixin混入怎么用
    这篇文章主要介绍了Vue中mixin混入怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 局部混入<template>  <...
    99+
    2023-06-25
  • vue3的mixin混入使用方法是什么
    本篇内容主要讲解“vue3的mixin混入使用方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue3的mixin混入使用方法是什么”吧!vue 2 中采用选项式API 如: ...
    99+
    2023-06-21
  • MyBatis映射文件中parameterType与resultType怎么使用
    这篇“MyBatis映射文件中parameterType与resultType怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看...
    99+
    2023-07-06
  • Vue中混入mixin的用法介绍
    目录基础使用选项合并自定义合并规则全局混入总结什么是混入? 混入通过注入配置项到vue实例用来提升复用性 基础使用 const myMixin = { creat...
    99+
    2022-11-13
    Vue mixin Vue 混入
  • vuejs中使用mixin局部混入/全局混入的方法详解
    目录前言需求什么是mixin全局混入几个重要的疑问选项合并生命周期函数data数据冲突方法名冲突mixin的优缺点1.变量名来源不明确2. 多个mixins的生命周期会合并融合到一起...
    99+
    2024-04-02
  • Python链式映射怎么使用
    本文小编为大家详细介绍“Python链式映射怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python链式映射怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。认识ChainMapPython的所提...
    99+
    2023-07-06
  • mybatisplus与JPA混合使用的方法是什么
    本文小编为大家详细介绍“mybatisplus与JPA混合使用的方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“mybatisplus与JPA混合使用的方法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知...
    99+
    2023-07-05
  • CSS插入、设置和映射图片的方法
    今天小编给大家分享一下CSS插入、设置和映射图片的方法的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了...
    99+
    2024-04-02
  • ECMAScript6中Map映射的基本概念与常用方法
    目录什么是映射 Object与Map区别 Map映射常用方法 声明并初始化赋值set获取键值get删除键值delete判断键值是否存在 has获取所有键值 values()key/v...
    99+
    2024-04-02
  • FlaskURL传参与视图映射的实现方法
    目录首页传参URL数据类型get传参首页 url与视图函数的映射是通过@app.route()装饰器实现的。 只有一个斜杠代表的是根目录——首页。 传参 UR...
    99+
    2023-03-14
    Flask URL与视图映射 Flask URL传参 Flask视图映射
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作