mixins混淆请求字典封装库

news2025/2/26 6:36:02

在这里插入图片描述
摘要:

页面请求要使用到很多重点的查询,写在本页面的逻辑代码太混乱,所以可以抽离封装成功一个js库混淆进来!

commonMixins.js:

import {Toast} from "vant";
export const oplistMix = {
  mounted() {
    this.GETSTORE_LOCATION();//店面位置
    this.TWO_METHODS();
  },
  data() {
    return {
      STORE_LOCATION:[],//店面位置

    }
  },
  methods: {
    //店面位置
    GETSTORE_LOCATION() {
      this.$axios
        .get("/common.do", {
          params: {
            method: this.$method.STORE_LOCATION,
            data: {
              type_code:"STORE_LOCATION"
            },
          },
        })
        .then((response) => {
          let res = response.data;
          if (res.code == 0) {
            let arr = [];
            res.data.forEach(item => {
              arr.push({
                code: item.code,
                name: item.name
              })
            });
            this.STORE_LOCATION = arr;
          }
        })
        .catch((error) => {});
    },
    TWO_METHODS(){
      
    },
    //根据code回显name
    getCodeName(code,list) {
        if (!code) {
          return null;
        }
        let code_arr = code.split(',');
        let name = '';
        for (let i = 0, len = list.length; i < len; i++) {
            let item = list[i];
            for (let q = 0;q < code_arr.length;q++) {
                if (item.code == code_arr[q]) {
                  name += item.name
                  if (i != code_arr.length - 1) {
                        name += ','
                  }
                }
            }
        }
        return name;
    },
     getDictionaryValue(code,list) {
        if (!code) {
          return null;
        }
        var name = '';
        list.map(item => {
           if(item.code == code){
              name = item.name;
           }
        })
    },
  }
}

混淆进入页面:

<template>
  <div class="storeDetail">
    <div class="detailPage">
      <div class="pageContent">
        <div class="pageItem">
          <div>店面位置</div>
          <div>{{getDictionaryValue(storeDetail.store_location,STORE_LOCATION) || '--'}}</div>
        </div>
      </div>
    </div>
  </div>
</template>

<script>
  import { oplistMix} from "../../commonMixins.js";
  import { Toast} from "vant";
  export default {
    mixins: [oplistMix],
    components: {
      Toast
    },
    data(){
      return{
        id:"",
        storeDetail:{},
      }
    },
    created(){
      this.id = this.$route.query.id || '';
      this.erp_code = this.$route.query.erp_code || '';
      this.getStoreDetail();
    },
    methods:{
      getStoreDetail(){
        let data ={
          id:this.id,
          key_word:"",
          pre_next_flag:1,
          pagenum:1,
          pagesize:10,
        }
        this.$axios
          .get("/common.do", {
            params: {
              method: this.$method.STORE,
              data: data,
            },
          })
          .then((response) => {
            let res = response.data;
            if (res.code == 0) {
              this.storeDetail = res.data;
            }
          })
      }
    }
  }
</script>

<style lang="less" scoped>
  @import "editStore.less";
</style>

Vue Mixins 是一种在 Vue.js 中复用组件逻辑的机制。Mixins 可以为组件提供可复用的功能,例如数据响应式、方法等。

// 定义一个 Mixin 对象
const myMixin = {
  data() {
    return {
      mixinMessage: 'Hello from mixin!'
    }
  },
  methods: {
    mixinSayHello() {
      console.log(this.mixinMessage);
    }
  }
}

// 定义一个主组件,并使用 Mixin
const myComponent = Vue.component('my-component', {
  extends: myMixin,
  data() {
    return {
      componentMessage: 'Hello from component!'
    }
  },
  methods: {
    sayHello() {
      console.log(this.componentMessage);
    }
  }
})

// 创建一个主组件实例
const myInstance = new myComponent();

// 调用继承自 Mixin 的方法和数据
myInstance.mixinSayHello(); // 输出 "Hello from mixin!"
console.log(myInstance.$data.mixinMessage); // 输出 "Hello from mixin!"

在这个示例中,我们首先定义了一个名为 myMixin 的 Mixin 对象,它有一个名为 mixinMessage 的数据属性和一个名为 mixinSayHello 的方法。然后,我们定义了一个名为 myComponent 的主组件,并使用 extends 关键字将其与 myMixin 合并。这样,myComponent 就拥有了 mixinMessage 数据属性和 mixinSayHello 方法。最后,我们创建了一个 myComponent 实例,并调用了它的 mixinSayHello 方法和访问了它的 mixinMessage 数据属性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1347424.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vue-springboot基于JavaWeb的宠物店兽医站管理系统

ide工具&#xff1a;IDEA 或者eclipse 编程语言: java 数据库: mysql5.7 框架&#xff1a;ssmspringboot都有 前端&#xff1a;vue.jsElementUI 详细技术&#xff1a;HTMLCSSJSspringbootSSMvueMYSQLMAVEN 数据库工具&#xff1a;Navicat结合现有兽医站体系的特点&#xff0c;运…

【小沐学NLP】Python实现TF-IDF算法(nltk、sklearn、jieba)

文章目录 1、简介1.1 TF1.2 IDF1.3 TF-IDF2.1 TF-IDF(sklearn)2.2 TF-IDF(nltk)2.3 TF-IDF(Jieba)2.4 TF-IDF(python) 结语 1、简介 TF-IDF&#xff08;term frequency–inverse document frequency&#xff09;是一种用于信息检索与数据挖掘的常用加权技术。TF是词频(Term Fr…

[场景实现]:多选框与树形结构递归

一、场景描述 实现一个分配权限的页面&#xff0c;最左侧是大的权限模块的名称&#xff0c;左右侧是控制其是否勾选的多选框。中间部分是一级权限模块下的子权限名称及多选框。 请求此权限模块数据的接口返回的是树形结构 对象数组。 主要属性为menuName表示权限名&#xff0…

回溯法寻找元素之和等于目标值的子集

这是一个回溯法的算法,可以用来寻找所有元素之和等于目标值的子集. 整个算法中最重要的是:在递归之后"恢复现场" 也就是: t[cnt]0; cnt--; 完整代码(注释部分打印信息可以用来辅助理解递归过程)&#xff1a; #include<iostream> #include<cstring> …

【Spring Security】快速入门之案例实操

目录 一、简介 1、什么是安全框架 2、主流的安全框架 3、为什么使用Spring Security 二、引言 1、什么是Spring Security 2、Spring Security工作原理 3、特点 三、快速入门 1、引入依赖 2、配置 3、启动测试 4、配置自定义账号密码 四、Web安全配置类 1.HttpSe…

vue3(十一)-基础入门之脚手架创建项目与打包并部署项目

一、安装 node.js node.js官网 1、下载并安装推荐版 2、检查是否安装成功 有版本号表示安装成功 3、如果想安装淘宝镜像可以使用以下指令 npm install -g cnpm -registryhttps://registry.npm.taobao.org检查淘宝镜像是否安装成功 二、安装vue脚手架 该指令为固定指令不可…

常用的 MySQL 可视化客户端

数据库可视化客户端&#xff08;GUI&#xff09;让用户在和数据库进行交互时&#xff0c;能直观地查看、创建和修改对象&#xff0c;如&#xff1a;表、行和列。让数据库操作变得更方便了。 今天&#xff0c;我们来了解下目前市场上最常用的 MySQL 可视化客户端。 官方&#x…

x-cmd-pkg | deno - 更快更强的 JS 和 TS 运行时

目录 简介首次用户技术特点进一步阅读 简介 Deno 是一个基于 V8 引擎和 Rust 语言构建的 JavaScript 和 TypeScript 运行时环境&#xff0c;于 2018 年由 Ryan Dahl 在演讲中宣布&#xff0c;并在 2020 年正式发布 1.0&#xff0c;目标是提供一个高效且安全的脚本环境。 安全…

idea中终端Terminal页面输入命令git log后如何退出

1、idea中Terminal输入命令git log后如何退出&#xff1f; 2、解决 输入q键会自动退出git log命令

《深入理解JAVA虚拟机》学习笔记

1.java内存结构&#xff0c;以及每个结构的作用&#xff1f; 线程共享区 堆内存:所有的对象实例都要在堆上分配方法区:是各个线程共享的内存区域&#xff0c;它用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据非线程共享区 Java虚拟机栈:每…

25、商城系统(七):商城项目基础功能pom.xml(重要),mybatis分页插件

截止这一章,我们就不把重心放在前端,后台的基础代码,因为后面都是业务层面的crud。 前端直接替换这两个文件夹即可,后台代码也直接复制: 一、重新更新一下所有的pom.xml 这个地方我踩了好多坑,最后得到一个完整的pom.xml,建议大家直接用我的pom.xml替换即可。 1.comm…

计算机组成原理知识总结

目录 第一章、计算机系统概述知识框架&#xff1a;1.冯诺依曼机和存储程序的概念&#xff1f;2.计算机的工作过程&#xff1f;3.在计算机系统结构中&#xff0c;什么是编译&#xff1f;什么是解释&#xff1f;4.描述一下指令执行过程&#xff1f;1) 取指令&#xff1a; PC 一&g…

[Angular] 笔记 25:指令

组件指令 (chatgpt 回答) 在 Angular 中&#xff0c;组件本身可以被视为指令&#xff0c;这种指令被称为组件指令。组件是 Angular 应用的构建块之一&#xff0c;它封装了一段具有特定功能和特性的用户界面&#xff0c;并且可以在应用中重复使用。 组件指令具有以下特征&…

图片预览 element-plus 带页码

vue3、element-plus项目中&#xff0c;点击预览图片&#xff0c;并显示页码效果如图 安装 | Element Plus <div class"image__preview"><el-imagestyle"width: 100px; height: 100px":src"imgListArr[0]":zoom-rate"1.2":max…

系列十五(面试)、RocketMQ消息重复消费问题

一、RocketMQ消息重复消费问题 1.1、官网 1.2、消息重复被消费原因 通过上述官网的描述我们可以知道&#xff0c;RocketMQ中的消息是存在重复消费的情况的。那么消息为什么会被重复消费呢&#xff1f;先来回顾一下RocketMQ的消息是怎么发送和接收的&#xff1a; 从上图可以看出…

Python入门学习篇(十四)——模块文件操作

1 模块 1.1 理解 包: python中带有__init__.py文件的文件夹 模块: 文件名(不包含.py后缀),如python官方的time.py中time就是模块1.2 示例代码 import datetime# 调用datetime模块中的datetime类的now()方法 t datetime.datetime.now() # 格式化输出日期和时间 strftime(&qu…

数据仓库【4】:最佳实践

数据仓库【4】&#xff1a;最佳实践 1、表的分类1.1、事实表1.2、维度表1.3、事务事实表1.4、周期快照事实表1.5、累积快照事实表1.6、拉链表 2、ETL策略2.1、全量同步2.2、增量同步 3、任务调度3.1、为什么需要任务调度&#xff1f;3.2、常见任务类型3.3、常见调度工具 1、表的…

类的加载顺序问题-demo展示

面试的的时候经常会被问到包含静态代码块、实例代码块和构造器等代码结构的加载顺序问题&#xff0c;下面借用一个面试题&#xff0c;回顾一下类的代码加载顺序。 public class AooTest {public static void main(String[] args) {AooTest.f1();}static AooTest test1 new Ao…

操作系统:分页存储管理方式

页式存储管理中&#xff0c;主存空间按页分配&#xff0c;可用一张“位示图”构成主存分配表。假设主存容量为2M字节&#xff0c;页面长度为512字节&#xff0c;若用字长为32位的字作主存分配的“位示图”需要多少个字&#xff1f;如页号从1开始&#xff0c;字号和字内位号&…

【Electron】富文本编辑器之文本粘贴

由于这个问题导致&#xff0c;从其他地方复制来的内容 粘贴发送之后都会多一个 换行 在发送的时候如果直接&#xff0c;发送innerHTML 就 可以解决 Electron h5 Andriod 都没问题&#xff0c;但是 公司的 IOS 端 不支持&#xff0c;且不提供支持&#xff08;做不了。&#xff…