当前位置: 首页 > news >正文

​​错误地使用了 app.use() 来注册全局组件

我是import globalComponent from "@/components"; /* eslint-disable */ // @ts-nocheck // Generated by unplugin-vue-components // Read more: https://github.com/vuejs/core/pull/3399 export {}; /* prettier-ignore */ declare module 'vue' { export interface GlobalComponents { KBreadcrumb: typeof import('./components/K-breadcrumb/index.vue')['default'] KSvgicon: typeof import('./components/K-svgicon/index.vue')['default'] RouterLink: typeof import('vue-router')['RouterLink'] RouterView: typeof import('vue-router')['RouterView'] } } 然后注册 报错app.use(globalComponent);

你的问题出在 ​​错误地使用了 app.use() 来注册全局组件​​。

🔍 ​​问题分析​

  1. @/components 导出的是全局组件类型声明​

    • 你的 @/components 文件是由 unplugin-vue-components 自动生成的,它只是 ​​类型声明​​(TypeScript 类型提示),​​并不是一个 Vue 插件​​。
    • 它只是为了让 TypeScript 知道 KBreadcrumbKSvgicon 等组件是全局可用的,但 ​​不会自动注册这些组件​​。
  2. app.use() 只能用于 Vue 插件​

    • app.use() 要求传入的是一个 ​​Vue 插件​​(即带有 install 方法的对象或函数)。
    • 你传入的 globalComponent 只是一个类型声明,不是插件,所以会报错。

✅ ​​正确做法​

​方法 1:使用 unplugin-vue-components 自动注册(推荐)​

unplugin-vue-components 的作用是 ​​自动按需导入组件​​,你 ​​不需要手动注册​​,它会在编译时自动处理。
确保你的 vite.config.ts / vue.config.js 配置了它:

 

ts

复制

// vite.config.ts
import Components from 'unplugin-vue-components/vite';export default defineConfig({plugins: [Components({// 自动导入 `./components` 下的组件dirs: ['src/components'],// 生成类型声明dts: 'src/components.d.ts',}),],
});

这样,你 ​​直接使用组件即可​​,无需手动注册:

 

vue

复制

<template><KBreadcrumb /><KSvgicon />
</template>

​方法 2:手动注册全局组件(不推荐,除非特殊需求)​

如果你 ​​不想用自动导入​​,可以手动注册:

 

ts

复制

// main.ts
import { createApp } from 'vue';
import App from './App.vue';
import KBreadcrumb from '@/components/K-breadcrumb/index.vue';
import KSvgicon from '@/components/K-svgicon/index.vue';const app = createApp(App);// 手动注册全局组件
app.component('KBreadcrumb', KBreadcrumb);
app.component('KSvgicon', KSvgicon);app.mount('#app');

❌ ​​错误修正​

你的 app.use(globalComponent) 是 ​​错误的​​,因为:

  • globalComponent 不是插件,它只是类型声明。
  • 你应该 ​​直接使用组件​​(方法1)或 ​​手动注册​​(方法2)。

​总结​

方案适用场景是否需要 app.use()备注
unplugin-vue-components 自动导入​推荐,减少手动注册❌ 不需要配置后直接使用组件
​手动注册全局组件​特殊需求,需显式控制❌ 用 app.component()适合少量全局组件

​推荐使用 unplugin-vue-components,完全不需要 app.use(globalComponent)!​​ 🚀

相关文章:

​​错误地使用了 app.use() 来注册全局组件

我是import globalComponent from "/components"; /* eslint-disable */ // ts-nocheck // Generated by unplugin-vue-components // Read more: https://github.com/vuejs/core/pull/3399 export {}; /* prettier-ignore */ declare module vue { export interface…...

Python Django基于协同过滤算法的招聘信息推荐系统【附源码、文档说明】

博主介绍&#xff1a;✌Java老徐、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;&…...

鹰角:EMR Serverless Spark 在《明日方舟》游戏业务的应用

作者&#xff1a;鹰角网络高级大数据研发 茅旭辉 背景介绍 鹰角网络是一家年轻且富有创新的游戏公司&#xff0c;致力于开发充满挑战性和艺术价值的游戏产品。公司目前涵盖了游戏开发、运营和发行的全生命周期业务。随着业务的扩展&#xff0c;鹰角网络从单一爆款游戏发展到多…...

C语言学习之两个数值交换的算法

前言&#xff1a;本篇文章仅仅是作为作者复习使用 在C语言中&#xff0c;交换两个两个变量的数值是很常见的应用。在学习到指针的时候&#xff0c;我们已经掌握了几种交换的算法了。今天我来做一个小汇总 1创建第三个变量 缺点&#xff1a;需要创造第三个变量 2加减交换 缺点…...

CExercise_13_1排序算法_2归并排序

题目&#xff1a;CExercise_ 请手动实现归并排序算法&#xff1a; void merge_sort(int arr[], int len) 如果学有余力&#xff0c;不妨尝试一下多种临时数组的方式&#xff1a; 1.局部变量数组 2.全局变量数组 3.堆数组 关键点 分析&#xff1a; &#xff1a; 代码 代码块解决…...

富斯i6遥控器,无法切换通道解决办法

开机后长按【OK】键&#xff0c;进入设置 按【DOWN】选择【setup】 点击【ok】进入设置 再点击【OK】进入Reverse 将2设置为下&#xff0c;长按【cancel】保存&#xff0c;返回到设置 进入【Aux.channels】 将第二行【Source】设置为【Source SwC】,长按【CANCEL】保存并返回。…...

Maven 编译指定模版

背景 基于SpringCloud 做的微服务项目&#xff0c;很多都是依赖公共模块下的包&#xff0c;并且多模板都是在一个项目下的。 问题 每次打包都很编译整个项目下的所有模块。这样太耗时间了&#xff0c;把流水线的时间拖的太长了。 解决方案 在maven打包时&#xff0c;我们选…...

solr安装及ik中文分词器配置

提示&#xff1a;solr9.x版本需要jdk17&#xff0c;solr8.x版本需要jdk8 1、Solr 简介 Solr 是Apache 下的一个顶级开源项目&#xff0c;采用 Java 开发&#xff0c;它是基于 Lucene 的全文搜索服务器。Solr 提供了比 Lucene 更为丰富的查询语句&#xff0c;同时实现了可配置、…...

详解LeetCode中用字符串实现整数相加,字符串转整数及其溢出处理详解

目录 题目背景 代码整体逻辑 变量初始化 逐位相加过程 处理最后进位 结果反转 示例演示 总结 在LeetCode中&#xff0c;有一道经典的算法题是实现两个字符串形式的非负整数相加&#xff0c;今天我们就来深入分析一段用C实现该功能的代码&#xff0c;探究其背后的逻辑与…...

vue学习笔记06

学习的课程地址&#xff1a;老杜Vue视频教程&#xff0c;Vue2&#xff0c;Vue3实战精讲&#xff0c;一套通关vue_哔哩哔哩_bilibili 1、vue程序初体验 2、vue核心技术(基础) 3、Vue组件化 前面参见&#xff1a; vue学习笔记01 vue学习笔记02 vue学习笔记03 vue学习笔记…...

如何查看自己抖音的IP属地?详细教程及如何修改

在当今互联网时代&#xff0c;IP属地信息已成为各大社交平台&#xff08;如抖音、微博、快手等&#xff09;展示用户真实网络位置的重要功能。以下是关于如何查看抖音IP属地的详细教程及常见问题解答&#xff0c;帮助您快速了解相关信息&#xff1a; 一、如何查看抖音账号的IP属…...

熟悉Linux下的编程

可能 目录 熟悉Linux下Python编程的含义及与非Linux环境编程的区别 一、核心含义解析 二、与非Linux环境的关键区别 三、典型应用场景对比 四、能力培养建议 openfoem的下载之路&#xff1a; 方法一&#xff1a;使用cd命令 方法二&#xff1a;使用快捷方式 方法三&am…...

Uniapp:获取当前定位坐标

目录 一、出现场景二、具体使用 一、出现场景 在项目的开发中&#xff0c;会出现打卡、定位当前位置的功能&#xff0c;那我们如何获取当前位置呢&#xff1f;这就需要使用getLocation来获取当前位置坐标 二、具体使用 uni.getLocation({type: wgs84, // 返回可以用于uni.op…...

GitHub实用手册

文章目录 一、GitHub 的定义二、GitHub 的主要功能三、GitHub 的优势四、GitHub 的使用相关工具GitSourcetreeGithub-Desktop 一、GitHub 的定义 GitHub 是一个基于 Git 的分布式版本控制系统&#xff0c;它允许开发者在本地和远程仓库中管理代码版本&#xff0c;支持多人协作…...

【从零实现高并发内存池】Central Cache从理解设计到全面实现

&#x1f4e2;博客主页&#xff1a;https://blog.csdn.net/2301_779549673 &#x1f4e2;博客仓库&#xff1a;https://gitee.com/JohnKingW/linux_test/tree/master/lesson &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01; &…...

Dijkstra算法求解最短路径—— 从零开始的图论讲解(2)

前言 在本系列第一期:从零开始的图论讲解(1)——图的概念,图的存储,图的遍历与图的拓扑排序-CSDN博客 笔者给大家介绍了 图的概念,如何存图,如何简单遍历图,已经什么是图的拓扑排序 按照之前的学习规划&#xff0c;今天笔者将继续带大家深入了解图论中的一个核心问题&#x…...

Spring AI 发布了它的 1.0.0 版本的第七个里程碑(M7)

Spring AI 发布了它的 1.0.0 版本的第七个里程碑&#xff08;M7&#xff09;&#xff0c;下个月就是 RC1&#xff0c;紧接着就是 GA&#xff01;&#xff0c;对于我们 Java 开发者来说&#xff0c;这绝对是个值得关注的好消息&#xff01; 但是对于 Java 学习者来说&#xff0c…...

如何从 GitHub 镜像仓库到极狐GitLab?

最近 GitHub 封禁中国用户的事情闹得沸沸扬扬&#xff0c;虽然官方发布的报道说中国用户被限制登录是因为配置错误导致&#xff0c;已经撤回了更新&#xff0c;中国用户已经可以正常使用。但是这就像横在国内开发者和企业头上的“达摩克利斯之剑”。为了避免 GitHub 不可用而带…...

大象机器人推出myCobot 280 RDK X5,携手地瓜机器人共建智能教育机

摘要 大象机器人全新推出轻量级高性能教育机械臂 myCobot 280 RDK X5&#xff0c;该产品集成地瓜机器人 RDK X5 开发者套件&#xff0c;深度整合双方在硬件研发与智能计算领域的技术优势&#xff0c;实现芯片架构、软件算法、硬件结构的全栈自主研发。作为国内教育机器人生态合…...

在Android Studio中,`Settings`里的Gradle路径、环境变量以及`gradle - wrapper.properties`文件关联

在Android Studio中,Settings里的Gradle路径、环境变量以及gradle - wrapper.properties文件关联 Android Studio中Settings里的Gradle路径 在Android Studio的Settings(Preferences ) -> Build, Execution, Deployment -> Build Tools -> Gradle 中: Use defau…...

用react 写一个可左右滑动的柱状图

效果图 目录 效果图 ✅ 项目结构 &#x1f680; 创建项目步骤 1️⃣ 打开终端或命令行&#xff0c;创建新项目&#xff1a; 2️⃣ 安装 recharts 图表库&#xff1a; 3️⃣ 替换默认代码&#xff1a; 4️⃣ 启动项目&#xff1a; ✅ 项目结构 scrollable-bar-chart/ ├…...

【正点原子STM32MP257连载】第四章 ATK-DLMP257B功能测试——MIPI LCD测试

1&#xff09;实验平台&#xff1a;正点原子ATK-DLMP257B开发板 2&#xff09;浏览产品&#xff1a;www.alientek.com 3&#xff09;全套实验源码手册视频下载&#xff1a;正点原子资料下载中心 文章目录 第四章 ATK-DLMP257B功能测试——MIPI LCD测试4.3 MIPI LCD测试4.3.1 使…...

【正点原子STM32MP257连载】第四章 ATK-DLMP257B功能测试——RS485串口测试

1&#xff09;实验平台&#xff1a;正点原子ATK-DLMP257B开发板 2&#xff09;浏览产品&#xff1a;www.alientek.com 3&#xff09;全套实验源码手册视频下载&#xff1a;正点原子资料下载中心 文章目录 第四章 ATK-DLMP257B功能测试——RS485串口测试 第四章 ATK-DLMP257B功能…...

Sui 的工具生态简化了游戏开发者的 Web3 集成流程

希望利用 Web3 独特协同效应的游戏开发者&#xff0c;常常在强大的区块链功能与流畅的游戏体验之间难以权衡。许多区块链方案要求大幅重构游戏基础架构&#xff0c;增加了开发难度&#xff0c;甚至需要学习全新的智能合约语言。而 Sui 通过直观的工具消除这一阻力&#xff0c;使…...

Vue 3 的组合式 API-hooks

Vue 3 的组合式 API 组合式 API 是 Vue 3 的核心特性之一&#xff0c;它允许开发者将组件的逻辑拆分为可复用的函数。组合式 API 的主要特点是 逻辑复用&#xff1a;将逻辑提取到独立的函数中&#xff0c;方便在多个组件中复用。组织清晰&#xff1a;将相关的逻辑分组&#x…...

AOSP Android14 Launcher3——底部任务栏Taskbar详解

前言&#xff1a;Launcher3中底部Taskbar和Navbar&#xff0c;或者说中文里面的术语导航栏&#xff0c;这几个词是很容易让人混淆的地方。本文要介绍的是Taskbar。从字面上意思来看&#xff0c;Taskbar就是任务栏&#xff0c;任务栏是Launcher3中一个重要的组件&#xff0c;尤其…...

QGraphicsView、QGraphicsScene和QGraphicsItem图形视图框架(五)QGraphicsView的缩放和移动

QGraphicsView自带滚动条的显示&#xff0c;但是大部分的需求样式都不需要滚动条&#xff0c;并且要通过鼠标来控制视图的缩放和移动。需要重写QGraphicsView实现。 一、相关函数 1.scale void QGraphicsView::scale(qreal sx, qreal sy) 按&#xff08;sx&#xff0c;sy&…...

算法——果蝇算法

果蝇算法&#xff08;Fruit Fly Optimization Algorithm&#xff0c;FOA&#xff09;是一种受果蝇觅食行为启发而开发的群智能优化算法。以下从算法原理、算法流程、算法特点等方面为你详细讲述&#xff1a; 算法原理 果蝇本身具有优于其他物种的嗅觉和视觉。在觅食过程中&am…...

重返JAVA之路——图书管理系统

目录 一、功能介绍 二、设计模块 三、系统构建 1.book模块 2.operation模块 输入循环和验证 查找图书并处理借阅状态 未找到图书的处理 查找删除图书功能实现 未找到图书的处理 图书查找与归还 work方法实现图书信息输出 3. user模块实现 四、主菜单 一、功能介绍 …...

【16】数据结构之基于树的排序算法篇章

目录标题 选择排序简单选择排序树形选择排序 堆排序堆的定义Heap小跟堆大根堆堆的存储堆的代码设计堆排序的代码设计 排序算法综合比较 选择排序 基本思想&#xff1a;从待排序的序列中选出最大值或最小值&#xff0c;交换该元素与待排序序列的头部元素&#xff0c;对剩下的元…...

Uniapp:确认框

目录 一、 出现场景二、 效果展示三、具体使用 一、 出现场景 在项目的开发中&#xff0c;会经常出现删除数据的情况&#xff0c;如果直接删除的话&#xff0c;可能会存在误删&#xff0c;用户体验不好&#xff0c;所以需要增加一个消息提示&#xff0c;提醒用户是否删除。 二…...

pyswmm实现洪涝模拟

准备好.inp文件作为SWMM模型输入&#xff0c;调用pyswmm模块执行模拟&#xff0c;返回节点溢流量&#xff08;flooding&#xff09;作为积水量的初步表征。 代码&#xff1a; from pyswmm import Simulation, Nodes import pandas as pddef run_swmm_simulation(inp_file, ou…...

My Diary Pro:记录生活,珍藏回忆

我的日记My Diary Pro是一个非常好用的手机日记软件&#xff0c;可以使用它来记录每日生活日常&#xff0c;不少的用户可能都知道在生活之中可能会发生一些比较的重要的事情&#xff0c;实际上我们都可以将这些内容记录下来。包括个人观点&#xff0c;旅行游记&#xff0c;心情…...

CSRF(跨站请求伪造)漏洞概述

CSRF(跨站请求伪造)漏洞概述 一、​什么是 CSRF ​ 攻击者诱导已登录用户在不知情的情况下&#xff0c;对受信任网站执行未授权操作。 简单说&#xff1a;你登录着网站A&#xff0c;攻击者诱导你访问某个恶意链接&#xff0c;使网站A误以为是你自己发出的操作&#xff08;比…...

[Java实战经验]对象拷贝

目录 谨慎重写clone方法重写clone()支持深拷贝带来的问题 合适的深拷贝 首先&#xff0c;对于不可变的类&#xff0c;我们不应该实现Cloneable接口&#xff0c;因为不可变类不需要拷贝&#xff0c;直接引用即可&#xff0c;实现Cloneable接口只会造成浪费。 对于Java可变类来说…...

WAF防火墙:构筑Web应用安全的“隐形护盾”

在数字化时代&#xff0c;Web应用已成为企业服务与用户交互的核心窗口。然而&#xff0c;随之而来的SQL注入、跨站脚本攻击&#xff08;XSS&#xff09;、DDoS攻击等威胁&#xff0c;时刻考验着网站的安全防线。Web应用防火墙&#xff08;WAF&#xff09;作为关键防护工具&…...

开源智慧巡检——无人机油田AI视频监控的未来之力

油田巡检&#xff0c;关乎能源命脉&#xff0c;却常受困于广袤地形、高危环境和人工效率瓶颈。管道泄漏、设备故障、非法闯入——这些隐患稍有疏忽&#xff0c;便可能酿成大患。传统巡检已无法满足现代油田对安全与效率的需求&#xff0c;而无人机油田巡检系统正以智能化之力重…...

【2025年泰迪杯数据挖掘挑战赛】B题 完整论文 模型建立与求解

目录 2025年泰迪杯数据挖掘挑战赛 B题完整论文&#xff1a;建模与求解 Matlab代码一、问题重述二、模型假设与符号说明2.1 模型基本假设2.2 符号说明 三、数据预处理**问题一&#xff1a;志愿者身体活动信息的统计分析****问题二&#xff1a;身体活动MET值的实时估计模型构建**…...

Chromium 134 编译指南 macOS篇:安装 Xcode(二)

1. 引言 在Chromium开发的征程中&#xff0c;为macOS平台构建正确的开发环境是成功编译的关键基础。继上一篇系统环境准备后&#xff0c;本文将重点介绍Xcode的安装与配置过程。作为macOS上不可或缺的集成开发环境(IDE)&#xff0c;Xcode为Chromium 134的编译提供了必要的编译…...

软件定义网络(SDN):重塑未来网络的革命性架构

在当今数字化时代&#xff0c;网络已成为企业、云计算、5G通信和物联网&#xff08;IoT&#xff09;的核心基础设施。然而&#xff0c;传统网络架构由于其封闭、静态和分布式的特性&#xff0c;难以应对快速变化的业务需求。软件定义网络&#xff08;Software-Defined Networki…...

Java虚拟机面试题:类加载机制

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家&#xff0c;历代文学网&#xff08;PC端可以访问&#xff1a;https://literature.sinhy.com/#/?__c1000&#xff0c;移动端可微信小程序搜索“历代文学”&#xff09;总架构师&#xff0c;15年工作经验&#xff0c;精通Java编…...

OCCT 入门(3)核心模块与架构

文章目录 一、核心模块与架构1、架构概述2、核心模块3、数据流转3.1、几何创建&#xff08;Geometric Primitives&#xff09;3.2、拓扑构建&#xff08;Topology Construction&#xff09;3.3、模型处理&#xff08;Modeling Algorithms&#xff09;3.4、可视化&#xff08;Vi…...

MAC-​​需求​​:10万订单异步执行库存扣减、短信通知。

批量任务并行处理​​ 实现,通过拆分任务、异步执行和线程池管理提升处理。 ​​10万订单异步处理方案设计​​ 基于图中代码的批量处理框架,结合订单业务需求,以下是 ​​库存扣减与短信通知的异步实现​​: ​​1. 代码实现(基于原有框架改造)​​ @Service public…...

ArrayList vs LinkedList,HashMap vs TreeMap:如何选择最适合的集合类?

精心整理了最新的面试资料和简历模板&#xff0c;有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 在 Java 开发中&#xff0c;集合类的选择直接影响程序的性能和代码的可维护性。不同的数据结构适用于不同的场景&#xff0c;盲目使用可能导致内存浪费、性能…...

使用Form.List且有Select组件

当在使用Form.List组件&#xff0c;且组件中有Select选项时&#xff0c;针对每一次选择&#xff0c;都要过滤掉那些已经选择过的选项&#xff0c;可能遇到的问题&#xff1a; 直接过滤会将每一个Select中的options选项都过滤掉&#xff0c;无法正常展示选择的选项 解决办法&a…...

大数据学习笔记

文章目录 1. 大数据概述1.1 大数据的特性1.2 大数据技术生态1.2.1 Hadoop 的概念特性1.2.2 Hadoop生态圈 — 核心组件与技术栈1.2.3 Hadoop生态演进趋势 2. 数据处理流程与技术栈2.1 数据采集2.1.1 日志采集工具2.1.2 实时数据流2.1.3 数据迁移 2.2 数据预处理2.2.1 批处理2.2.…...

Obsidian 文件夹体系构建 -INKA

Obsidian 文件夹体系构建 -INKA 本篇文章主要分享一下自己折腾学习实践过的 INKA 框架方法。原地址&#xff1a;Obsidian文件夹体系构建–INKA。 文章目录 Obsidian 文件夹体系构建 -INKA前言INKA简介INKA 理论最佳实践实际应用 反思 前言 上文 Obsidian文件夹体系构建-ACCES…...

QML与C++:基于ListView调用外部模型进行增删改查(性能优化版)

目录 引言相关阅读工程结构数据模型设计DataModel 类ContactProxyModel 类 为什么使用QSortFilterProxyModel&#xff1f;应用初始化与模型连接UI实现 性能分析与优化运行效果扩展思考总结下载链接 引言 在上一篇中介绍了基于ListView调用外部模型进行增删改查&#xff0c;本文…...

集合常用Stream操作

1、中间操作 filter()过滤 将流中的元素筛选出满足条件的元素 List<String> list Arrays.asList("abc","test","demo","frse","fesfes"); list.stream().filter(s -> s.startsWith("f")).forEach(Sy…...

ReactNative中处理安全区域问题

RN原生方案不支持android系统&#xff0c;所以在此使用三方组件react-native-safe-area-context 1、安装插件 yarn add react-native-safe-area-context2、安装完成后直接yarn ios可能会失败&#xff0c;需要先 cd ios && pod install && cd ..出来再继…...