手搓vue3组件_0,打包配置
打包后引入项目是发现报错:
Cannot read properties of null (reading 'isCE')
TypeError: Cannot read properties of null (reading 'isCE')
这个是由于vue版本冲突问题,
这里我引入了自己打包的ui组件库,但是ui组件库中打包进入了自己的vue,那么在此时使用时,如果你引入的自己的组件中有slot,那么就会包这个问题,
解决方法千奇百怪
我的解决:
vue.config.js中加上:
resolve: {symlinks: false,alias: {vue: path.resolve('./node_modules/vue')}},
那么它的完整配置就是:
const { defineConfig } = require('@vue/cli-service')
// const webpack = require("webpack");
//打包配置自动忽略console.log等
const UglifyJsPlugin = require('uglifyjs-webpack-plugin')
const path = require('path')module.exports = defineConfig({productionSourceMap: false,transpileDependencies: true,publicPath: '/',//代理devServer: {// 指定项目启动时的默认端口号port: 80,historyApiFallback: true,allowedHosts: 'all',proxy: {'/': {ws: false,target: "http://localhost:89",changeOrigin: true,pathRewrite: {'^/': '/'}}},// proxy: 'http://localhost:8090'},configureWebpack: {resolve: {symlinks: false,alias: {vue: path.resolve('./node_modules/vue')}},plugins: [//打包环境去掉console.log等/* @author icestone , 17:22* @date 2023/5/15* 下面这个应该在打包时才打开,开发时不要打开,编译消耗很多时间*//*new UglifyJsPlugin({uglifyOptions: {compress: {//warnings: false, 注释不然打包会报错如图下图drop_console: true, //注释consoledrop_debugger: true, //注释debuggerpure_funcs: ['console.log'], //移除console.log},},})*/],output: {libraryExport: '../behind/src/static'},},
})
- 当然,上面是在vue cli项目中的解决
关于这段配置的解释:
这段代码是用于配置 Webpack 的,它的目的是为了设置项目的别名和禁用符号链接。resolve.symlinks: false:这一行设置为 false 表示禁用符号链接。符号链接是一种特殊的文件链接,它允许一个文件或目录链接到另一个文件或目录。在某些情况下,符号链接可能会导致问题,因此将其设置为 false 是合适的。resolve.alias: { vue: path.resolve('./node_modules/vue') }:这一行设置了一个别名,它的作用是将 vue 模块解析为 ./node_modules/vue。这样,Webpack 就可以找到 Vue.js 库的入口文件,并且不会出现找不到模块的情况。path.resolve('./node_modules/vue') 是一个计算属性,它将当前项目的根路径与 vue 模块的路径进行拼接,得到 Vue.js 模块的完整路径。总之,这段代码的作用是配置 Webpack 以禁用符号链接并设置 Vue.js 模块的别名。
- 在vite项目中也是这样解决的,显式声明使用的vue位置:
import { defineConfig } from 'vite'
import path from 'path'
import vue from '@vitejs/plugin-vue'// https://vitejs.dev/config/
export default defineConfig({plugins: [vue()],resolve: {alias: {'@': path.resolve(__dirname, 'src'),vue: path.resolve('./node_modules/vue')}},css: {// 预处理器配置项preprocessorOptions: {less: {math: "always",},},},server: {proxy: {// 正则表达式写法'/api': {target: 'http://localhost:89',changeOrigin: true,rewrite: (path) => path.replace(/^\/api/, '')}}}
})
相关文章:
手搓vue3组件_0,打包配置
打包后引入项目是发现报错: Cannot read properties of null (reading isCE) TypeError: Cannot read properties of null (reading isCE)这个是由于vue版本冲突问题, 这里我引入了自己打包的ui组件库,但是ui组件库中打包进入了自己的vue,那么在此时使用时,如果你引入的自己的组…...
WebAssembly
WebAssembly(简称Wasm)是一种面向Web的二进制指令格式,用于在现代Web浏览器中运行高性能的可移植代码。它是一种跨平台、低级别的虚拟机技术,允许开发者将不同编程语言的代码编译成Wasm格式,然后在Web浏览器中运行。 …...
TM4C123库函数学习(2)--- LED闪烁,滴答定时器精准延时
前言 (1)阅读本文之前,需要先看TM4C123库函数学习(1)— 点亮LEDTM4C123的ROM函数简介keil开发环境搭建篇。 (2)TM4C123是M4的内核,拥有一个24位向下计数的SysTick定时器。࿰…...
Linux: network: tcp: back-off技术
当一个包需要重传的时候,会使用 exponential back-off来计算下一次重传的时间。 这个back-off的使用还是相当的广泛:《Adaptive Backoff Synchronization Technique》https://dl.acm.org/doi/pdf/10.1145/74926.74970 The general idea of backoff has …...
36 | 银行贷款数据分析
本文将以银行贷款数据分析为主题,深入探讨如何运用数据科学的方法,揭示银行贷款领域的内在规律和趋势。通过对贷款数据的分析,我们能够洞察不同类型贷款的分布情况、贷款金额的变化趋势,以及借款人的特征和还款情况等关键信息。 通过运用Python编程语言及相关的数据分析工…...
计算机网络-物理层(二)- 传输方式
计算机网络-物理层(二)- 传输方式 串型传输与并行传输 串行传输:是指数据是一个比特一个比特依次发送的,因此在发送端和接收端之间,只需要一条数据传输线路即可 并行传输:是指一次发送n个比特而不是一个比特,因此发送…...
超强台风“杜苏芮”来袭!如何实现安全可靠的通信?
暴雨来袭 超强台风“杜苏芮”是2023年太平洋台风季第5个被命名的台风,在我国东南沿海地区造成了巨大的影响,在7月28日登录福建省晋江市时,“杜苏芮”中心附近最大风力15级,达到了超强台风的等级;福州市区、闽侯、莆田…...
内网隧道—HTTP\DNS\ICMP
本文仅限于安全研究和学习,用户承担因使用此工具而导致的所有法律和相关责任! 作者不承担任何法律和相关责任! HTTP隧道 Neo-reGeorg Neo-reGeorg 是一个旨在积极重构 reGeorg 的项目,目的是: 提高可用性࿰…...
QT mouseTracking
在Qt中要捕捉鼠标移动事件需要重写MouseMoveEvent,但是MouseMoveEvent为了不太耗资源在默认状态下是要鼠标按下才能捕捉到。要想鼠标不按下时的移动也能捕捉到,需要setMouseTracking(true)。 如果鼠标跟踪失效(默认),…...
java操作mongdb【超详细】
Java操作 搭建 搭建 依赖 <!--mongodb--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId></dependency>配置文件 spring:data:mongodb:host…...
JavaScript函数
什么是函数? 在 JavaScript 中,函数是一段被封装起来用于特定任务的可重复使用的代码块。 例如: function logger() {console.log(IT知识一享); }这样就创造了logger()函数,后续可以重复利用这个函数让它输出日志,后…...
RISC-V公测平台发布 · 使用YCSB测试SG2042上的MySQL性能
实验介绍: YCSB(全称为Yahoo! Cloud Serving Benchmark),该性能测试工具由Java语言编写(在之前的MC文章中也提到过这个,如果没看过的读者可以去看看之前MC那一期),主要用于云端或者…...
母婴即时零售行业数据可视化分析
对新晋父母来说,很多母婴用品如同一位贴心的助手,为他们的宝宝提供温暖和呵护。从婴儿床垫到可爱的拼图玩具,每一件用品都是为宝宝的成长和发展量身定制。对于繁忙的父母们而言,这些用品不仅帮助照顾孩子,更是为他们减…...
快速解决IDEA中类的图标变成J,不是C的情况
有时候导入新的项目后,会出现如下情况,类的图标变成J,如图: 直接上解决方法: 找到项目的pom.xml,右键,在靠近最下方的位置找到Add as Maven Project,点击即可。 此时,一般类的图标就…...
vue学习笔记
1.官网 v2官网 https://v2.cn.vuejs.org/ v3官网 https://cn.vuejs.org/ 2.vue引入 在线引入 <script src"https://cdn.jsdelivr.net/npm/vue2.7.14/dist/vue.js"></script> 下载引入(下载链接) https://v2.cn.vuejs.org/js/vue.js 3.初始化渲…...
难解的bug
android.app.RemoteServiceException: Context.startForegroundService() did not then call Service.startForeground(): ServiceRecord 【Android TimeCat】 解决 context.startforegroundservice() did not then call service.startforeground() | XiChens Blog http://www…...
人文景区有必要做VR云游吗?如何满足游客出行需求?
VR云游在旅游行业中的应用正在快速增长,为游客带来沉浸式体验的同时,也为文旅景区提供了新的营销方式。很多人说VR全景展示是虚假的,比不上真实的景区触感,人文景区真的有必要做VR云游吗?我的答案是很有必要。 如果你认…...
【字节跳动青训营】后端笔记整理-1 | Go语言入门指南:基础语法和常用特性解析
**本人是第六届字节跳动青训营(后端组)的成员。本文由博主本人整理自该营的日常学习实践,首发于稀土掘金:🔗Go语言入门指南:基础语法和常用特性解析 | 青训营 本文主要梳理自第六届字节跳动青训营ÿ…...
3.解构赋值
解构赋值是一种快速为变量赋值的简洁语法,本质上仍然是为变量赋值。 3.1数组解构 数组解构是 将数组的单元值快速批量赋值给一系列变量 的简洁语法 1.基本语法: (1)赋值运算符左侧的[ ]用于批量声明变量,右侧数组的单元值将被赋…...
ChatGPT在智能游戏和游戏AI中的应用如何?
ChatGPT在智能游戏和游戏AI领域具有广泛的应用潜力,可以为游戏体验增添智能和交互性,同时也有助于游戏开发者创造更丰富、更引人入胜的游戏内容。以下将详细探讨ChatGPT在智能游戏和游戏AI中的应用。 ## 1. 游戏角色的智能化 在角色扮演游戏࿰…...
Pixel Dimension Fissioner 效果进阶:生成超高清4K分辨率图像作品集
Pixel Dimension Fissioner 效果进阶:生成超高清4K分辨率图像作品集 1. 开篇:当AI遇见4K创作 最近测试Pixel Dimension Fissioner时,我被它生成4K图像的能力彻底震撼了。作为一款专注于高分辨率图像生成的AI工具,它打破了常规AI…...
SITS2026推理优化框架全拆解(含TensorRT-LLM v2.7兼容性验证报告)
第一章:SITS2026推理优化框架全貌与技术定位 2026奇点智能技术大会(https://ml-summit.org) SITS2026(Scalable Inference Toolkit for Scalable 2026)是面向大语言模型与多模态推理场景设计的轻量级、可插拔式优化框架,专为低延…...
Pixel Language Portal 在VSCode中的深度应用:Codex风格编程辅助
Pixel Language Portal 在VSCode中的深度应用:Codex风格编程辅助 1. 智能编程助手的崛起 想象一下这样的场景:当你正在VSCode中编写代码时,刚输入几个字符,编辑器就能预测你接下来要写的内容;当你卡在某个函数实现上…...
开源社区参与:从使用者到贡献者的转变过程
开源社区参与:从使用者到贡献者的转变过程 开源软件已成为现代技术生态的基石,从操作系统到开发工具,无数项目依赖全球开发者的协作。许多用户最初只是开源产品的使用者,但随着时间的推移,他们可能逐渐转变为贡献者&a…...
MogFace人脸检测模型-WebUI行业落地:在线教育平台学生出勤与专注度分析
MogFace人脸检测模型-WebUI行业落地:在线教育平台学生出勤与专注度分析 1. 项目背景与需求场景 在线教育平台的快速发展带来了新的教学管理挑战。传统的线下课堂中,教师可以直观地看到学生的出勤情况和听课状态,但在线上环境中,…...
OMNET++卫星网络仿真实战:从零搭建极地卫星通信系统(附QT界面配置)
OMNET卫星网络仿真实战:从零搭建极地卫星通信系统(附QT界面配置) 在航天科技与通信工程交叉领域,卫星网络仿真已成为验证轨道算法和通信协议的关键手段。OMNET作为离散事件网络仿真框架,配合osg-satellites扩展模块&am…...
移动AI部署
移动AI部署:让智能触手可及 在智能手机、无人机、可穿戴设备等移动终端快速普及的今天,人工智能(AI)技术正逐步从云端下沉至边缘设备。移动AI部署将强大的AI能力嵌入便携设备,实现实时响应、隐私保护和离线运行&#…...
Qwen3.5-2B开源模型应用:支持国产昇腾910B芯片适配与CANN环境部署
Qwen3.5-2B开源模型应用:支持国产昇腾910B芯片适配与CANN环境部署 1. 模型概述 Qwen3.5-2B是通义千问系列最新推出的轻量化多模态基础模型,作为20亿参数规模的"小钢炮"版本,它在保持强大能力的同时,特别注重低功耗和低…...
使用 Python 设置 Excel 表格的行高与列宽
在技术领域,我们常常被那些闪耀的、可见的成果所吸引。今天,这个焦点无疑是大语言模型技术。它们的流畅对话、惊人的创造力,让我们得以一窥未来的轮廓。然而,作为在企业一线构建、部署和维护复杂系统的实践者,我们深知…...
信息时代的内容创作者,你离“爆款“只差一个正确的信息入口
说实话,作为一个在互联网内容行业摸爬滚打七八年的老编辑,我早就被各种信息轰炸得有些麻木了。每天早上醒来,手机里躺着十几个App的推送通知,微信群里几百条未读消息,邮箱里塞满了各类资讯订阅。想要快速了解今天发生了…...
