app.config.globalProperties

目录

一:基础使用

1、简介

2、使用

3、打印结果:

二:封装

1、创建一个.ts文件(utils/msg.ts)

2、在main.ts中全局注册

3、在页面中使用

4、打印结果


一:基础使用

1、简介

app.config.globalProperties 是 Vue 3 应用实例(app)的一个配置属性,它允许你在整个应用范围内添加全局可用的属性。将一些常用的工具函数挂载到全局属性上,这样在组件中就可以直接调用这些函数,而无需重复导入。

import { createApp } from 'vue';
import App from './App.vue';// 创建 Vue 应用实例
const app = createApp(App);// 添加全局属性
app.config.globalProperties.$mes= '这是一个全局消息';
app.config.globalProperties.$meFunction=()=>{return '这是个全局函数返回的方法'
};// 挂载应用
app.mount('#app');

2、使用

<template><div></div>
</template><script setup lang="ts'>
import { getCurrentInstance } from "vue";
const { proxy } = getCurrentInstance() as any;
console.log("proxy", proxy);
console.log("mes", proxy.$mes);
console.log("msFunction", proxy.$meFunction());
</script>

解释:

getCurrentInstance getCurrentInstance 函数用于获取当前正在活跃的组件实例。在 vue3的组合式 API 中,由于不再像选项式 API 那样有一个明确的 this 指向当前组件实例,当你需要访问组件实例的属性、方法或者上下文信息时,就可以使用 getCurrentInstance 来获取当前组件实例

proxy : Vue 3 里,app.config.globalProperties 可用于给应用添加全局属性,而借助 getCurrentInstance 获取的 proxy 对象能够访问这些全局属性。

3、打印结果:

如果属性很多,不可能全部写在main.ts中,有以下方法

二:封装

1、创建一个.ts文件(utils/msg.ts)

export const msgFunction = (value: any) => {return value;
};

2、在main.ts中全局注册

import { createApp } from 'vue';
import App from './App.vue';// 创建 Vue 应用实例
const app = createApp(App);
import { msgFunction } from "./utils/msg";// 添加全局属性
app.config.globalProperties.$msgFunction = msgFunction;// 挂载应用
app.mount('#app');

3、在页面中使用

<template><div></div>
</template><script setup lang="ts'>
import { getCurrentInstance } from "vue";
const { proxy } = getCurrentInstance() as any;
console.log("proxy", proxy.$msgFunction("你好"));
</script>

4、打印结果

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

初探大模型开发:使用 LangChain 和 DeepSeek 构建简单 Demo

最近&#xff0c;我开始接触大模型开发&#xff0c;并尝试使用 LangChain 和 DeepSeek 构建了一个简单的 Demo。通过这个 Demo&#xff0c;我不仅加深了对大模型的理解&#xff0c;还体验到了 LangChain 和 DeepSeek 的强大功能。下面&#xff0c;我将分享我的开发过程以及一些…

基于RWA 与 AI-Agent 协同的企业数字化生态构建

在当前数字经济高速发展的背景下&#xff0c;企业数字化转型已成为提升竞争力和创新能力的必由之路。以实体零售与文旅行业为代表的传统产业&#xff0c;正通过现实世界资产&#xff08;RWA&#xff09;数字化与人工智能代理&#xff08;AI-Agent&#xff09;的协同应用&#x…

专题地图的立体表达-基于QGIS和PPT的“千层饼”视图制作实践

目录 前言 一、QGIS准备基础数据 1、QGIS 相关插件 2、图层标绘操作 二、PPT中制作 1、调整图片的规格 2、设置旋转 3、添加文字 三、总结 前言 在信息爆炸的时代&#xff0c;数据的可视化呈现变得愈发关键&#xff0c;而专题地图作为传递地理空间信息的有力工具&#…

3D文物线上展览如何实现?

3D文物线上展览的实现主要依赖于一系列先进的数字技术和创新手段&#xff0c;以下是实现3D文物线上展览的关键步骤和技术要点&#xff1a; 一、文物数字化采集与建模 高精度扫描&#xff1a; 使用专业的3D扫描仪对文物进行高精度扫描&#xff0c;获取文物的三维数据。积木易…

SpringCloud 学习笔记1(Spring概述、工程搭建、注册中心、负载均衡、 SpringCloud LoadBalancer)

文章目录 SpringCloudSpringCloud 概述集群和分布式集群和分布式的区别和联系 微服务什么是微服务&#xff1f;分布式架构和微服务架构的区别微服务的优缺点&#xff1f;拆分微服务原则 什么是 SpringCloud &#xff1f;核心功能与组件 工程搭建父项目的 pom 文件 注册中心Rest…

1140:验证子串--next.data()、KMP和find

1140&#xff1a;验证子串--KMP 题目 解析next.data()KMP代码Find代码 题目 解析 对于字符串的匹配常见的KMP算法【面试常考】 KMP中需要注意的是&#xff1a;应该从下标1开始遍历&#xff0c;因为下标0前面无值&#xff0c;不能匹配next 固在循环外应初始next[0]0;//易忘点 …

Python 实现大文件的高并发下载

项目背景 基于一个 scrapy-redis 搭建的分布式系统&#xff0c;所有item都通过重写 pipeline 存储到 redis 的 list 中。这里我通过代码演示如何基于线程池 协程实现对 item 的中文件下载。 Item 结构 目的是为了下载 item 中 attachments 保存的附件内容。 {"crawl_tim…

ubuntu中用docker下载opengauss

1.安装docker sudo apt install docker.io2.拉取opengauss镜像 sudo docker pull enmotech/opengauss3.创建容器 sudo docker run --name opengauss --privilegedtrue -d -e GS_PASSWORDEnmo123 enmotech/opengauss:latest3.5.如果容器停止运行&#xff08;比如关机了&#…

从零基础到能独立设计单片机产品,一般需要经历哪些学习阶段?

相信很多人&#xff0c;内心都有“钢铁侠”的幻想&#xff0c;成为能写程序&#xff0c;能设计硬件&#xff0c;能设计结构&#xff0c;能焊接的全能型人才。 上次徐工问我&#xff0c;如果你财富自由了&#xff0c;想去做啥&#xff1f; 我说出来&#xff0c;可能大家都不信&a…

cursor中git提交记录出现 签出(已分离)

我当时在cursor中的git记录右键点击 签出(已分离) 就导致最左边的记录图标的颜色由蓝色变为了橙色 后面提交的记录都不在显示本地分支和远程分支 创建新分支&#xff1a;在您当前的分离HEAD状态下&#xff0c;创建一个新的分支来保存这些提交。 git checkout -b new-branch-nam…

软件测试之测试用例

1. 什么是测试用例 测试用例&#xff08;TestCase)是为了实施测试而向被测试的系统提供的一组集合&#xff0c;这组集合包含&#xff1a;测试环境、操作步骤、测试数据、预期结果等要素。 设计测试⽤例原则⼀&#xff1a; 测试⽤例中⼀个必需部分是对预期输出或结果进⾏定义 使…

Unity2D 井字棋

Unity版本2022.3 场景布置 其中可以通过给Board对象添加Grid Layout Group&#xff0c;然后设置每个子物体所占宽高快速排整齐。用完删掉。每个落子的方格ChessBox都是一个Button。 根据Board的宽高除以三即可。 然后隐藏按钮&#xff0c;通过设置alpha值实现。 将ChessBox的…

专题三搜索插入位置

1.题目 题目分析&#xff1a; 给一个目标值&#xff0c;然后要在排序的整数数组中&#xff0c;找到跟目标值一样的&#xff0c;如果没有就把这个值插入进去&#xff0c;然后返回插入后的下标。 2.算法原理 根据题目的时间复杂度可以知道要用二分&#xff0c;开始划分区域&…

正式进入linux 1.0

切记&#xff1a;在Linux中空格很重要 回车键也很重要&#xff0c;不要按两次回车键 ls是显示当前所有文件夹 具体解释&#xff1a; 前面的东西是用户名 后面的是设备名&#xff08;计算机名&#xff09; 这是因为linux允许不同用户在终端下进行操作&#xff0c;这么做可以…

分页查询的实现

目录 前言 一.问题描述 二.后端实现步骤 2.1配置PageHelper插件 ①导入依赖 ②在application.yml配置文件中添加相关配置 2.2编写一个入门的程序&#xff0c;体验分页过程 2.3定义一个vo&#xff0c;用来收集分页后的所有信息 2.4修改serviceImpl层的代码 2.5动态设…

16003. orin camera 相机驱动源码 imx477分析记录

文章目录 1 背景2 原理图2.1 CAM_MUX_SEL 4 lane 选通2.2 J21 和 J20 原理图3 驱动源码及设备树3.1 子设备树 tegra234-p3768-camera-rbpcv3-imx477.dtsi3.2 顶层设备树 tegra234-camera-rbpcv3-imx477.dtsi3.2.1 tegra-capture-vi 视频输入子系统节点配置.3.2.2 host1x 主机控…

无标签数据增强+高效注意力GAN:基于CARLA的夜间车辆检测精度跃升

目录 一、摘要 二、引言 三、框架 四、方法 生成合成夜间数据 昼夜图像风格转换 针对夜间图像的无标签数据增强技术 五、Coovally AI模型训练与应用平台 六、实验 数据 图像风格转换 夜间车辆检测和分类 结论 论文题目&#xff1a;ENHANCING NIGHTTIME VEHICLE D…

开源工具利器:Mermaid助力知识图谱可视化与分享

在现代 web 开发中&#xff0c;可视化工具对于展示流程、结构和数据关系至关重要。Mermaid 是一款强大的 JavaScript 工具&#xff0c;它使用基于 Markdown 的语法来呈现可定制的图表、图表和可视化。对于展示流程、结构和数据关系至关重要。通过简单的文本描述&#xff0c;你可…

C++算法学习2:二分算法精讲

一、实数二分法回顾 1.1问题背景 在1~2的范围内找到一个x&#xff0c;使得式子5x2 -9x 1 的绝对值<10-9&#xff08;即无限接近0&#xff09; 要求&#xff1a;x精确到小数点后9位。 换句话说也就是求&#xff1a;就是求方程 5x2- 9x 1 0 在1~2内的近似解 1.2怎么找到…

手写一个简易版的tomcat

Tomcat 是一个广泛使用的开源 Servlet 容器&#xff0c;用于运行 Java Web 应用程序。深入理解 Tomcat 的工作原理对于 Java 开发者来说是非常有价值的。本文将带领大家手动实现一个简易版的 Tomcat&#xff0c;通过这个过程&#xff0c;我们可以更清晰地了解 Tomcat 是如何处理…