- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我将 Vite 与 React 和 Typescript 结合使用。当我运行 vite dev
时,网站的实时版本运行完美,甚至控制台上没有错误。
当我运行vite build
然后运行vite Preview
时,我看到的只是一个白色页面,并且类型错误:无法将未定义转换为对象
控制台出现错误。
我无法追踪代码中的问题,因为错误发生在构建/最小化之后,但为了确定,我在调用 Object.keys()
的实例中添加了安全检查。
这是错误开始的代码段:
Object.keys(pd).forEach(function (e) {
if (pd[e] === 0)
Xd.prototype["on" + e] = function () {
this.scope.emit(e);
};
else if (pd[e] === 1)
Xd.prototype["on" + e] = function (t) {
this.scope.emit(e, t);
};
});
编辑:
我正在检查最小化的代码,就在错误所在的长代码块之前,我看到了一个 MuiTouchRipple。我正在使用 MaterialUI 库,该库是否可能导致此问题?我尝试从版本 5.4.2 更新到 5.6.3,但构建后仍然崩溃。
最佳答案
我设法修复了它。
为像我这样的新手发布调试步骤。
这可以让你看到原始代码,它仍然是捆绑形式,所以你仍然无法确定问题所在的确切文件,但至少你知道更多的东西。 (在我的具体情况下,因为我使用的是 vite,所以我必须更改配置文件中的变量,请参阅 https://vitejs.dev/config/#build-minify )。
在我的例子中,目标和模块设置为 ESNext,尝试将其更改为 ES6 或 commonjs 有助于获得更好的可搜索代码。(参见https://www.tsmean.com/articles/learn-typescript/typescript-module-compiler-option/)
当我尝试在 vscode 中搜索代码时,它没有出现。这是一个好兆头,至少我的代码没有引起问题!
但同时:现在怎么办?
我找到的解决方案是禁用 vscode 从搜索中排除的文件夹(默认情况下 vscode 不在 node_modules
中搜索),或者在项目文件夹。我发现后者更快、更高效。
在我的具体案例中,问题是一个多年没有更新的旧库( https://www.npmjs.com/package/react-html-parser )。一旦我删除它,一切就开始工作了。
关于javascript - "TypeError: can' t 将未定义转换为对象“仅在 vite 构建之后,之前,使用 vide dev,一切正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72017405/
我将 Vite ( https://vitejs.dev/ ) 用于静态多页网站。 这是构建命令后的默认项目文件夹结构。 my-app/ ├─ node_modules/ ├─ dist/ │ ├─
Formatjs 提供了一个 babel plugin对于使用 react-intl 注入(inject)消息 ID 并删除 description 的模块。我如何将它与 Vite 一起使用? 最佳答
我正在尝试编写一个 chrome 扩展程序。我找到了一种方法来创建多个页面和后台脚本,但后台脚本包含哈希并且是放入 dist/assets 文件夹中。我只想输出“dist/background.js”
我使用 vite 创建了一个项目模板。 在package.json下,我看到了这个; "scripts": { "dev": "vite", "build": "vue-tsc -
我正在尝试从 Create React App 迁移到 Vite.js,但我遇到了导入别名的问题。 在 Create React App 中,我有一个 jsconfig.json 文件,其中 comp
在我的 Vite 项目中使用以下 .env: # To prevent accidentally leaking env variables to the client, only # variabl
如果您尝试使用 Vite 将 dayjs 导入到 Vue/React 应用程序中,您会发现它失败。 Vite 仅适用于 ESM 模块。 最佳答案 我发现你需要直接导入esm模块,然后它才能在Vite
我最近试图在Vercel上部署一个SvelteKit项目库,但由于Vercel构建应用程序的方式,我编写的传递实用程序类并以编程方式调用TailWind的API端点无法工作。它在我的本地环境中运行得很
我最近试图在Vercel上部署一个SvelteKit项目库,但由于Vercel构建应用程序的方式,我编写的传递实用程序类并以编程方式调用TailWind的API端点无法工作。它在我的本地环境中运行得很
我正在使用 Vue 和 vite 通过获取 API 来练习 Web 应用程序的工作流程,遵循此 tutorial .末yarn dev命令,我收到错误。我试过了: 直接克隆project并运行相同的命
我有一个用 React JS 构建的网站,我使用 Vite 作为 JS Bundler。问题是,当我在 Netlify 上部署网站并重新加载页面时,它显示“找不到页面”。 我尝试添加更改 vite.c
我是 vite 新手,首先,我实际上并不知道我需要什么样的结构。 我需要构建多个应用,但其中一些依赖于相同的组件。 到目前为止它运行良好,但我认为混合了一些东西
我正在使用 Vue + Vite + TS,并且正在构建一些我想在其他地方构建和导入的库。 关键是我使用 dotenv 设置了一些环境变量,因此我可以使用 import.meta.env.MY_VAR
我正在参加「掘金·启航计划」 项目背景 vite出现之后,迅速带走了一大波webpack的使用者,即使是对打包工具不熟悉的小白,也能很快感受到两者的区别——vite快的多!
分析 version:2.3.7。本文将整理 vite 静态资源的几种处理方式,应用案例和源码分析相结合,带你 10mins 通关该模块知识~ 一.处理的五种方式 (1)
作者:来自 vivo 互联网大前端团队- Wei Xing 在研发小型项目时,传统的 Vue、React 显得太“笨重”。本文主要针对开发小型项目的场景,谈谈 Vite+Sve
博客园 @四季留歌 项目工程下载(腾讯微云):点我 缺点:必须安装 cesium 依赖和几个 vite 插件,起项目时略微麻烦,部署 cdn 较麻烦 优点:打包速度起飞,构建后的成果代码网络传输效率最
我有一个 vite 3 项目。我怎样才能将它更新到 vite 4?我需要从头开始创建一个新项目并复制文件吗?或者我只是更新 package.json 中的版本号,删除 node_modules 文件夹
我想通过 vite 获取 npm 模块中的原始 css 字符串。根据 vite 手册, https://vitejs.dev/guide/assets.html#importing-asset-as-
我正在尝试让 https 在我的 Vite 本地主机环境中工作。 Chrome 显示无效证书错误。 我已经像这样设置了我的 vite.config.js 文件: import { defineConf
我是一名优秀的程序员,十分优秀!