写在前面
该系列主要用于记录工作中一些bug和一些不太好解决的问题,或者说是自己觉得很有记录必要的东西,所以学习,记录为主,样式美观为辅,基本不会做什么markdown的格式,方便查阅即可。
vite项目别名配置
遇到这个问题是因为技术栈用的是vite+vue3+ts,在项目中肯定需要用到ts的interface来约束对象的类型,初次发现该应用是在网上随便找了一个配置别名的方法,结果导致了使用别名,或者不使用别名,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'
//其中vue()是vite脚手架帮我们自动生成的,我们只需要添加一个属性就可以了
plugins: [vue(),
{
...esbuild({
//替换成你想要的谷歌内核版本
target: 'chrome64',
loaders: {
'.vue': 'js',
'.ts': 'js'
}
}),
enforce: 'post',
}
],
完美解决!
vite项目在本地运行到飞书浏览器样式错乱
为了做移动端的适配,我选择的方案是在更改跟标签的font–size大小来自定义rem的大小,其原理就是通过屏幕的大小和750进行比例计算得出font–size,这样就可以得到与小程序端rpx相同的效果了,显示效果确实很完美,但是飞书浏览器会出现样式错乱,至今还没有找到问题的原因。
提供两个解决方案:
1.取消rem适配,用绝对像素px进行编写。
2.比较极端,在index.html的meta标签内,把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进行投诉反馈,一经查实,立即删除!