写在前面

系列主要用于记录工作中一些bug和一些不太好解决问题,或者说是自己觉得很有记录必要的东西,所以学习记录为主,样式美观为辅,基本不会做什么markdown格式,方便查阅即可

vite项目别名配置

遇到这个问题是因为技术栈用的是vite+vue3+ts,在项目中肯定需要用到tsinterface约束对象类型,初次发现应用是在网上随便找了一个配置别名的方法结果导致了使用别名,或者不使用别名,ts虽然可以找到通过别名找到文件,但是无法解析interface,使interface无效!虽然不知道最初在网上找的那个配置错在哪里,这里通过正确的配置,又重启vscode,终于成功了!
出现问题两个明显的特征
1.如果配置了别名,则无法通过control+鼠标点击快捷进入文件
2.引入interface后,基本无效,无法对参数进行约束,当把鼠标hover到别名上时,无法展示定义类型约束

正确的别名配置方法
1.在vite.config.ts文件中的defineConfig添加属性

  resolve: {
    alias: {
      // 如果报错__dirname找不到,需要安装node,执行npm install @types/node --save-dev
      "@": path.resolve(__dirname, "src"),
      "@assets": path.resolve(__dirname, "src/assets"),
      "@components": path.resolve(__dirname, "src/components"),
      "@images": path.resolve(__dirname, "src/assets/images"),
      "@views": path.resolve(__dirname, "src/views"),
      "@store": path.resolve(__dirname, "src/store"),
    },
  },

2.如果此时还是出现上述问题的话,还需要tsconfig.json中的compilerOptions属性如下配置:

    "baseUrl": "./",
    "paths": {
      "@/*":[
        "src/*"
      ]
    }

3.此时如果还不可以的话,希望你可以重启一下vscode
以上就是我破坑的步骤,具体还没有发现什么其他的问题

vite项目低版本浏览器兼容性问题

这个问题也坑了我一早上,因为我用的是vue3,网上大多数都是react相关问题,完全找不到用vue3和我有相同问题的,没办法,硬着头皮看文档解决,终于找到解决方法
先说下问题:我主要的工作业务公司内部飞书网页端职能应用,但飞书内置浏览器内核版本太低,导致用飞书内置浏览器打开,会出现白屏,引入vconsole调试了一下,发现一个匪夷所思的问题,提示有个错误符号 ‘.’,这种问题是最恶心的,因为没有错误提示行,我根据vue项目的运行文件顺序一层打印,从html=>main.ts=>App.vue=>routre.js,最终把问题锁定在了一个执行语句
XXX?.xxx
语句是ES6的新语法,一般浏览器没有问题,但低版本浏览器无法解析语句,所以要进行js转换,一般的vue2项目我们使用babel,但vite里不好使用babel(我不会,不知道怎么引入该插件),所以另辟蹊径,引入另一个插件esbuild,他可以把指定文件转译成目标文件,如ts->js,话不多说,贴代码
目标文件是vite.config.ts,首先要引入该文件

import esbuild from 'rollup-plugin-esbuild'

然后defineConfig对象使用插件属性

//其中vue()是vite脚手架我们自动生成的,我们需要添加一个属性就可以了
  plugins: [vue(),
  {
    ...esbuild({
      //替换成你想要的谷歌内核版本
      target: 'chrome64',
      loaders: {
        '.vue': 'js',
        '.ts': 'js'
      }
    }),
    enforce: 'post',
  }
  ],

完美解决

vite项目在本地运行到飞书浏览器样式错乱

为了做移动端的适配,我选择方案是在更改标签fontsize大小自定义rem大小,其原理就是通过屏幕大小和750进行比例计算得出fontsize,这样就可以得到与小程序rpx相同效果了,显示效果确实很完美,但是飞书浏览器出现样式错乱,至今还没有找到问题的原因
提供两个解决方案
1.取消rem适配,用绝对像素px进行编写
2.比较极端,在index.htmlmeta标签内,把width属性强制设置为750,然后原型图的样式设置成H5->750px然后就可以在移动端做到适配,但是在PC端就会出现特别大的样式,特别难看,像老人机一样,但是比例是没有问题的。
3.据说可以通过引入flexable库来实现适配,我没有采用方法,最终选择px,因为该项目是两头固定,中间是瀑布流的项目,所以对高度没有rem适配要求,通过calc计算就好,下次可以试试flexable移动适配

原文地址:https://blog.csdn.net/wzy22ydd/article/details/127780490

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_43924.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注