Vue3+Vite3+Vant初体验及踩过的一些坑

news2024/10/3 10:41:47

需要帮人做移动端的几个页面,带表单那种,说最好能用vant做,于是边学边弄记录下。

首先用

npm create vite@latest

就报错了,于是默默看了眼node包版本比官网说的低,就先升级node,升级之后再运行一次命令

项目创建起来后常规的npm i、npm run dev都没问题,太久没写vue都忘了路由怎么写了,搜了一下发现需要先

npm install vue-router@4 

 再在src目录下创建router文件夹、router.js;再编写router.js

import { createRouter, createWebHistory } from "vue-router";
import HelloWorld from "../components/HelloWorld.vue";


const routerHistory = createWebHistory()
const router = createRouter({
    history: routerHistory,
    routes: [
        {
            path: '/',
            component: HelloWorld
        },
    ]
})
export default router

配置完还需要在App.vue配置

还需要在main.js引入

import { createApp } from 'vue'
import './style.css'
import App from './App.vue'
import router from './router/router.js'
createApp(App).use(router).mount('#app')

然后在需要导航的地方用<router-link to="/"></router>包裹即可使用路由

再在项目里面引入vant,先在项目

npm i vant
npm i vite-plugin-style-import@1.4.1 -D

如果再跟着vant官网里面这样配置是会报错:[vite] Internal server error: Failed to resolve import "项目地址/node_module".... 之类的,需要改一下

应该这样写就好了:

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import styleImport, { VantResolve } from 'vite-plugin-style-import';

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    styleImport({
      resolves: [VantResolve()],
      libs: [
        {
          libraryName: 'vant',
          esModule: true,
          resolveStyle: (name) => `../es/${name}/style`
        }
       ]
    })
  ],
})

配置完后续需要什么组件直接先编辑main.js  import 再使用.use()

import { createApp } from 'vue'
import './style.css'
import App from './App.vue'
import router from './router/router.js'
import { Form } from 'vant'
createApp(App).use(Form).use(router).mount('#app')

还有就是在模板自动生成的vue里面默认是<script setup></script>这种格式,在里面cv vant的实例代码会报错,需要去掉script标签中的setup

 

 

 以下是vant踩过的一些坑:

直接使用Area组件会报没有@vant/area-data的错好像?需要手动安装

npm i @vant/area-data -D

再在需要使用组件的页面引入

import { areaList } from '@vant/area-data';

vant form-item可以使用正则pattern、validator等校验验证,但每种只能使用一次吗?不同的表单项都要使用pattern模式要咋办呢,这点暂时没解决、、

真正使用到了ref()和reactive(),觉得reactive真的是十分方便,父子组件的传值props方式的话、也没什么大变化、、  总体来说vue3语法上感觉比vue2更精简方便好用 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/7203.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

sketch入门选手如何避坑

Sketch它是为图标设计和界面设计而生的。它是一个优秀的人。UI一站式应用Sketch画布将是无限大小的&#xff0c;每层都支持多种填充模式。Sketch为您提供真正合作设计过程所需的所有工具。从早期创意到像素完美的艺术品&#xff0c;原型清晰&#xff0c;与开发人员交接。Sketch…

Flink1.15源码解析--选举

文章目录一、LeaderContender二、LeaderElectionService2.1、LeaderElectionService2.2、LeaderElectionEventHandler(竞选服务的事件处理类)三 、LeaderElectionDriver3.1、LeaderLatchListener角色说明LeaderContender(竞选者)需要选主的主体&#xff0c;比如dispatcher、res…

Linux 夺命连环11问你能答对几个?

朋友们&#xff0c;先来11个快问快答看看自己能答对8个吗&#xff1f; 1.如何查看一个文件的末尾50行&#xff1f; tail -n 50 file 2.如何查看文件中包含“error”的行 cat file | grep "error" 3.如何查看某端口号是否被占用&#xff1f; netstat -anp | gre…

图片水印怎么加?图片加水印方法分享

相信大家在日常生活中&#xff0c;都会在各个平台上分享自己拍摄的照片吧&#xff0c;但大家在收到网友的好评和点赞的同时&#xff0c;是不是会因为担心图片被别人转发或者是拿去做一些不好的事情而感到烦恼呢&#xff1f;其实要解决这个烦恼很简单&#xff0c;那就是给图片添…

点击化学(Click chemistry) 叠氮-PEG4-NHS/Biotin-PEG-N3/Azid/DBCO-EPG-NHS/DBCO-NH2

点击化学&#xff08;Click chemistry&#xff09;&#xff0c;也称作链接化学、速配接合组合式化学。在药物开发、生物医用材料优化、生物分子标记与检测等诸多领域中有着较好的应用&#xff0c;已经成为最热门的研究领域之一。点击化学符合绿色化学的12项原则&#xff0c;具有…

stm32 笔记 IO 口点灯实验及 HAL 库使用

GPIO 概述 全称&#xff1a;general purpose intput output&#xff0c;通用输入输出接口。 顾名思义&#xff0c;既可作为输入框也可以作为输入口。 引脚不一定是 GPIO&#xff0c;有些引脚也作为复位或晶振等使用。 GPIO的八种工作模式 输入&#xff1a;浮空输入&#xf…

甘露糖-酰基|mannose-Hydrazide|酰基-PEG-甘露糖

甘露糖-酰基|mannose-Hydrazide|酰基-PEG-甘露糖 酰基(acyl group)&#xff0c;是指有机或无机含氧酸去掉一个或多个羟基后剩下的原子团&#xff0c;通式为R-M(O)-。 酰基(acyl group)指的是有机或无机含氧酸去掉羟基后剩下的一价原子团&#xff0c;通式为R-M(O)-。在有机化学…

论文调研

一、论文部分 基于傅里叶文档恢复的鲁棒文档去锐化与识别https://www.semanticscholar.org/paper/Fourier-Document-Restoration-for-Robust-Document-Xue-Tian/64dcd0cac46b936eb413f36b462be3b5b298c75b 1. 由于这篇论文没有给代码&#xff0c;所以在connected papers上查找…

Spring Security 安全框架 (一) 基础操作

1.password 登录密码 在 springboot 项目中 , 引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</artifactId></dependency><dependency><groupId>org.springfra…

因特网的组成,边缘之间的通讯方式,数据交换的方式

边缘之间的通讯方式有俩种&#xff1a; 1.客户服务器方式 2.对等方式&#xff08;pear-to-pear&#xff09; 什么是客户端服务器方式&#xff1f; 客户 (client) 和服务器 (server) 都是指通信中所涉及的两个应用进程。 客户-服务器方式所描述的是进程之间服务和被服务的关系…

QT菜单栏,工具栏,状态栏

1. 菜单栏 用代码来实现菜单栏&#xff1a; 头文件&#xff1a;mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H ​ #include <QMainWindow> ​ QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } QT_END_NAMESPACE ​ class MainWindow : public QMai…

如何用JavaScript完美地区分双击和单击事件

通过一个悬浮球交互功能的案例来阐述问题&#xff0c;以及解决办法。 实现效果 类似微信里的悬浮窗效果&#xff0c;苹果手机的悬浮球功能效果 1.可以点击拖动&#xff0c;然后吸附在窗口边缘2.点击悬浮球&#xff0c;可以跳转界面&#xff0c;或者更改悬浮球的形态准备 1.移…

C++ 语法基础课2 —— printf 语句与判断结构

文章目录1. printf 输出格式(#include<cstdio>)1.1 int、float、double、char 等类型的输出格式1.2 所有输出的变量均可包含在一个字符串中1.2.1 练习11.2.2 练习21.3 扩展功能2. if 语句2.1 基本 if-else 语句2.1.1 练习12.1.2 练习22.1.3 练习42.2 常用比较运算符2.3 i…

金融业数字化聚焦容器云,全闪存为什么是点睛之笔?

文|螳螂观察 作者|李永华 刻板、保守、小心翼翼…… 很多人对金融业尤其是银行在数字化创新方面的印象&#xff0c;都是如此。 这个印象到底对不对&#xff1f; 答案可能是&#xff0c;既对&#xff0c;又不对。 对的地方在于&#xff0c;出于合规等要求&#xff0c;一个…

[附源码]计算机毕业设计JAVA点餐系统

[附源码]计算机毕业设计JAVA点餐系统 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven…

采集平台-大数据平台数据采集系统

随着社会的发展。人们也是越来越离不开互联网&#xff0c;今天小编就给大家盘点一下免费的采集平台&#xff0c;只需要点几下鼠标就能轻松爬取数据&#xff0c;不管是导出excel还是自动发布到网站都支持。详细参考图片一、二、三、四&#xff01; 企业人员 通过爬取动态网页数…

android 静默升级 卸载功能实现

一、近期需要实现一个apk静默升级卸载自启动功能&#xff0c;首先需要获取系统root权限才能执行静默升级&#xff0c;下面不墨迹直接上代码. 首先是MainActivity 页面 package com.example.tiaoshiapkjingmo;import androidx.appcompat.app.AppCompatActivity; import okhttp3.…

如何利用 promise 影响代码的执行顺序?

如何利用 promise 影响代码的执行顺序&#xff1f; 我们写代码的时候&#xff0c;经常会遇到这样的场景。2个不同组件&#xff0c;它们的生命周期本身都是相互独立&#xff0c;毫无关联的&#xff0c;但是它们调用的接口&#xff0c;存在相互依赖的情况。 我举个例子&#xf…

windows中Mysql数据库的安装和卸载

以安装包“mysql-5.7.35-win32.zip”为例&#xff0c;推荐安装5.7最新版本 一、安装 1、根据自己操作系统版本下载32位或64位的安装包&#xff0c;也可去官网下载&#xff0c;建议下载如下图压缩包 将下载的解压包解压&#xff0c;目录结构如下&#xff1a; 2、新建文件“my.…

IC工程师入门必学,Verilog零基础入门教程

近年来&#xff0c;IC行业发展火热&#xff0c;薪资待遇高&#xff0c;发展前景好&#xff0c;所以成了很多人转行的首选。但IC行业入行门槛高&#xff0c;需要具备相关的知识技能。比如工程师必须至少掌握一种HDL语言。 一般在HDL语言中&#xff0c;Verilog相对来说更加易学、…