专注app软件定制开发Vue3+TypeScript项目报错: 找不到名称“require”。是否需要为节点安装类型定义?

+专注app软件定制开发项目编写代码时报错:专注app软件定制开发找不到名称“require”。是否需要为节点安装类型定义?请尝试使用 npm i --save-dev @types/node。 

 描述:今天在开发项目时(项目框架为Vue3+TypeScript)需要 动态引入静态资源,也就是的src属性值为动态获取,按照以往的做法直接是require引入即可,如下代码:

<img class="demo" :src="require(`../../../assets/image/${item.img}`)" />

写上后代码波浪线报错,报错提示:找不到名称 “require”。是否需要为节点安装类型定义? 请尝试使用 npm i --save-dev @types/node。ts(2580)
按照提示在命令行工具中执行安装@type/node后波浪线依然存在,没有解决问题,后经过排查发现需要在ts的配置文件tsconfig.json中加上type类型,解决方式如下
第一步:按照提示 安装@type/node,在命令行工具中输入提示中的安装命令

npm i --save-dev @types/node

第二步:打开 项目根目录,找到 TypeScript的配置文件tsconfig.json,在tsconfig.json中加上type:['node'] 指定类型,代码如下:

  1. {
  2. "compilerOptions": {
  3. "target": "esnext",
  4. "module": "esnext",
  5. "moduleResolution": "node",
  6. "strict": true,
  7. "jsx": "preserve",
  8. "sourceMap": true,
  9. "resolveJsonModule": true,
  10. "esModuleInterop": true,
  11. "baseUrl": ".",
  12. "types": [
  13. "vite/client",
  14. "node"
  15. ],
  16. "lib": [
  17. "esnext",
  18. "dom"
  19. ],
  20. "paths": {
  21. "/@/*": [
  22. "src/*"
  23. ],
  24. }
  25. },
  26. "include": [
  27. "src/**/*.ts",
  28. "src/**/*.d.ts",
  29. "src/**/*.tsx",
  30. "src/**/*.vue",
  31. "src/vendors/coordtransform.js"
  32. ]
  33. }

加上后require即可不再报错~

友情提示:如果你的项目用的是Vite,即框架是 Vue3++Vite,那么require是不能被使用的,vite中并没有require这种静态资源加载方法,因此如果是想动态的加载静态资源,应该到vite的官网上去查找vite如何引入静态资源
或者看博主的另一篇问题解决方法…博文地址如下:

网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发