教你如何使用npm创建uniappVue3版本的项目,并安装基础框架库Scss、Unocss、Tailwindcss
如果您觉得这篇文章有帮助的话!给个点赞和评论支持下吧,感谢~
作者:哇子
互联网技术(摸鱼)交流QQ群:374984174
最近涉及到uniapp开发,在了解到可以使用hbuildx和vscode两种方式开发后,我选择后者,今天来记录下过程,方便后期复盘
也可以查看官网地址:https://uniapp.dcloud.net.cn/quickstart-cli.html
我这里是vue3版本,所以node要求18+版本,确认自己版本在18及以上(以下也是基于vue3版本的)
全局安装 vue-cli
创建uni-app
使用vue2正式版
1
| vue create -p dcloudio/uni-preset-vue my-project
|
使用Vue3/Vite版
1
| npx degit dcloudio/uni-preset-vue#vite my-vue3-project
|
如果出现报错,访问不到github,可以下载下面的压缩包
https://gitee.com/dcloud/uni-preset-vue/repository/archive/vite.zip
安装依赖
进入到刚刚创建好的项目
等待安装完成后,你就可以运行并编写代码了
引入SCSS、SCSS-LOADER
1
| npm i sass sass-loader --save-dev
|
建议将版本锁定在以下版本
1 2
| "sass": "^1.63.2", "sass-loader": "^10.4.1",
|
引入UNOCSS
官方插件教程地址:https://github.com/MellowCo/unocss-preset-weapp/tree/main/examples/uniapp_vue3
1
| npm i unocss unocss-preset-weapp -D
|
- unocss 0.59.* 之后版本 vite.config.ts
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| import { defineConfig } from 'vite' import uni from '@dcloudio/vite-plugin-uni'
export default defineConfig(async ()=>{ const UnoCss = await import('unocss/vite').then(i => i.default)
return { plugins: [ uni(), UnoCss(), ], } })
|
- unocss 0.59.* 之前版本 vite.config.ts
1 2 3 4 5 6 7 8 9 10 11 12
| import { defineConfig } from 'vite' import uni from '@dcloudio/vite-plugin-uni' import Unocss from 'unocss/vite'
export default defineConfig({ plugins: [ uni(), Unocss(), ], })
|
写一个配置文件unocss.config.ts
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| import presetWeapp from 'unocss-preset-weapp' import { extractorAttributify, transformerClass } from 'unocss-preset-weapp/transformer'
const { presetWeappAttributify, transformerAttributify } = extractorAttributify()
export default { presets: [ presetWeapp(), presetWeappAttributify(), ], shortcuts: [ { 'border-base': 'border border-gray-500_10', 'center': 'flex justify-center items-center', }, ],
transformers: [ transformerAttributify(),
transformerClass(), ] }
|
unocss官网:
https://unocss.dev/
unocss常用类名:https://typeofnan.github.io/vuepress-blog/article/technology/front-end/css/UnoCSS.html
引入tailwindcss
与unocss其中二选一,如果你安装了unocss了就不要安装tailwindcss了
1、安装依赖
1
| npm install -D tailwindcss postcss autoprefixer
|
2、初始化tainwind配置文件
3、在 tailwind.config.js 中写入
1 2 3 4 5 6 7 8
| module.exports = { content: ['./index.html', './src/**/*.{js,ts,jsx,tsx,vue}'], theme: { extend: {}, }, plugins: [], }
|
4、 在App.vue中添加
1 2 3 4 5
| <style> @import 'tailwindcss/base'; @import 'tailwindcss/components'; @import 'tailwindcss/utilities'; </style>
|
5、在vite.config.js中修改
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| import { defineConfig } from "vite"; import tailwindcss from 'tailwindcss'; import uni from "@dcloudio/vite-plugin-uni";
export default defineConfig({ css: { postcss: { plugins: [ tailwindcss(), ], }, }, plugins: [uni()], });
|
6、小程序适配
1
| npm i @uni-helper/vite-plugin-uni-tailwind
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| import { defineConfig } from "vite"; import tailwindcss from 'tailwindcss'; import uni from "@dcloudio/vite-plugin-uni"; import uniTailwind from '@uni-helper/vite-plugin-uni-tailwind';
export default defineConfig({ css: { postcss: { plugins: [ tailwindcss(), ], }, }, plugins: [uni(), uniTailwind()], });
|
7、rem to rpx,由于tailwind默认是rem单位,需要转到rpx
1
| npm i tailwindcss-rem2px-preset -D
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
module.exports = { content: ['./index.html', './src/**/*.{js,ts,jsx,tsx,vue}'], theme: { extend: {}, }, plugins: [], presets: [ require('tailwindcss-rem2px-preset').createPreset({ fontSize: 32, unit: 'rpx' }) ], }
|
8、使用注意
在使用过程中,我发现text-[32rpx],涉及到rpx单位时,它会识别成颜色,因为颜色也是text开头,所以最好这样text-[length:48rpx]
tailwind官网
官网:https://tailwind.nodejs.cn/docs/installation