当前位置: 首页 > news >正文

小程序引入vant-Weapp保姆级教程及安装过程的问题解决

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

本文同时参与 「掘力星计划」,赢取创作大礼包,挑战创作激励金

当你想在小程序里引入vant时,第一步:打开官方文档,第二步:切到快速上手,然后开始步骤一、步骤二、步骤三?

image-20210925093852009

你只会看到

image-20210925094920494

--------------------------以下是正文-------------------------

如果正准备安装,可以直接跳到下面的【正确的安装姿势】一步一步走,就不会出现问题啦!

问题汇总

可能出现的一些问题汇总

问题一:构建npm,提示找不到package.json文件

按官网,步骤一,通过npm安装,这个时候还没问题,但是当你到第四步点击【构建npm】时,就可能出现

image-20210925104011474

所以在npm安装时,先确保package.json存在,不存在的话先npm init初始化一下项目。新建小程序,默认是没有package.json文件的(嗯反正我的没有🤔)

问题二:构建npm,未找到miniprogram文件

有package.json文件之后,再次点击【构建npm】,又提示

image-20210925104048843

如果出现未找到miniprogram的情况,则自行在根目录创建miniprogram解决这个问题。

问题三:构建npm成功,但是miniprogram里没东西

image-20210925113320459

如果是先npm安装了,发现没有package.json再进行创建的话,package.json里并没有你的依赖信息,所以构建为空。

image-20210925105444951

重新执行npm i @vant/weapp -S --production,在点击构建即可

image-20210925113410473

问题四:引入报错

以为终于安装完可以开始用了,但是.....还是报错!!!

image-20210925101654057

按照快速上手的方法引入组件时,会出现此路径错误

image-20210901143347733

官网是这样

image-20210925101957491

我们需要改成

 

css

复制代码

"usingComponents": { "van-button": "/miniprogram/miniprogram_npm/@vant/weapp/button/index" }

好了,终于用上了。

image-20210925105808938

正确的安装姿势

我们根据以上错误分析,结合官网步骤,来解锁正确的安装姿势

image-20210925110006061

第一步:创建小程序

image-20210925110213893

当前的目录文件是这样的

image-20210925110325999

第二步:先执行

 

csharp

复制代码

npm init

生成package.json文件,我做测试,就直接一直回车了,这个可根据自己需求配置

image-20210925110615636

第三步:通过npm安装(官网步骤一)

 

css

复制代码

npm i @vant/weapp -S --production

image-20210925110705708

第四步: 修改 app.json(官网步骤二)

将 app.json 中的 "style": "v2" 去除,小程序的新版基础组件强行加上了许多样式,难以覆盖,不关闭将造成部分组件样式混乱。

image-20210925110805809

第五步:修改 project.config.json(官网步骤三)

开发者工具创建的项目,miniprogramRoot 默认为 miniprogrampackage.json 在其外部,npm 构建无法正常工作。

需要手动在 project.config.json 内添加如下配置,使开发者工具可以正确索引到 npm 依赖的位置。

 

json

复制代码

{ ... "setting": { ... "packNpmManually": true, "packNpmRelationList": [ { "packageJsonPath": "./package.json", "miniprogramNpmDistDir": "./miniprogram/" } ] } }

image-20210925111000290

注意: 由于目前新版开发者工具创建的小程序目录文件结构问题,npm构建的文件目录为miniprogram_npm,并且开发工具会默认在当前目录下创建miniprogram_npm的文件名,所以新版本的miniprogramNpmDistDir配置为'./'即可

第六步:在根目录新增miniprogram文件夹

image-20210925111128059

第七步:构建npm包(官网步骤四)

image-20210925111246836

image-20210925111428355

构建完成之后,你会在miniprogram文件看到vant的文件夹,这样代表安装成功,可以开始使用了。

image-20210925111346825

第八步:引入使用

app.jsonindex.json中引入组件

 

css

复制代码

"usingComponents": { "van-button": "/miniprogram/miniprogram_npm/@vant/weapp/button/index" }

image-20210925111644625

然后在wxml就可以开始使用了

image-20210925111749950

结语

如果现在不需要使用那就赶紧收藏一下,万一之后就要用了呢!

image.png


最后再教大家一个小技巧,看图片,对就是头像旁边的那个小手点一下

点赞.gif

作者:Axjy
链接:https://juejin.cn/post/7011742207073845278
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

相关文章:

小程序引入vant-Weapp保姆级教程及安装过程的问题解决

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。 本文同时参与 「掘力星计划」,赢取创作大礼包,挑战创作激励金 当你想在小程序里引入vant时,第一步:打开官方文档,第二步&#xff…...

LeetCode 周赛上分之旅 #45 精妙的 O(lgn) 扫描算法与树上 DP 问题

⭐️ 本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 和 BaguTree Pro 知识星球提问。 学习数据结构与算法的关键在于掌握问题背后的算法思维框架,你的思考越抽象,它能覆盖的问题域就越广,理解难度…...

JavaScript-DOM实战案例

一、window定时器 1.window定时器方法 有时我们并不想立即执行一个函数,而是等待特定一段时间之后再执行,我们称之为“计划调用(scheduling a call)”。 目前有两种方式可以实现: setTimeout 允许我们将函数推迟到一…...

STM32 学习笔记1:STM32简介

1 概述 STM32,从字面上来理解,ST 是意法半导体,M 是 Microelectronics 的缩写,32 表示 32 位,合起来理解,STM32 就是 ST 公司开发的 32 位微控制器。是一款基于 ARM 公司推出的基于 ARMv7 架构的 32 位 Co…...

Hadoop-Hbase

1. Hbase安装 1.1 安装zookeeper、 hbase 解压至/opt/soft,并分别改名 配置环境变量并source生效 #ZK export ZOOKEEPER_HOME/opt/soft/zk345 export PATH$ZOOKEEPER_HOME/bin:$PATH #HBASE_HOME export HBASE_HOME/opt/soft/hbase235 export PATH$HBASE_HOME/b…...

关于不停机发布新版本程序的方式

“不停机发布新版本程序”,暂且这么称呼吧,其实就是所说的滚动发布、灰度发布、金丝雀发布和蓝绿发布。 之所以会总结性地提一下这几个概念,主要是本次出门游历,流浪到了乌兰察布市四王子旗,在这儿遇上了个有趣儿的家伙…...

MeterSphere压测,出现HttpHostConnectException

现象:MeterSphere更换压力机后,压测出现出现HttpHostConnectException 解决方案: net.ipv4.tcp_tw_reuse默认是0或者2,更改为1 net.ipv4.tcp_tw_reuse,表示是否允许重新应用处于TIME-WAIT状态的socket用于新的TCP连…...

cherry-pick

要将dev分支的某次提交给master分支&#xff0c;可以使用以下命令&#xff1a; 1. 切换到dev分支&#xff1a;git checkout dev 2. 查看提交历史&#xff0c;找到要提交给master的某次提交的commit hash&#xff08;假设为 <commit_hash>&#xff09; 3. 切换到master…...

opencv形状目标检测

1.圆形检测 OpenCV图像处理中“找圆技术”的使用-图像处理-双翌视觉OpenCV图像处理中“找圆技术”的使用,图像处理,双翌视觉https://www.shuangyi-tech.com/news_224.htmlopencv 找圆心得&#xff0c;模板匹配比霍夫圆心好用 - 知乎1 相比较霍夫找直线算法&#xff0c; 霍夫找…...

k8s中无法获取到nginx-ingress的客户端真实ip地址x-forwarded-for

1.查看阿里云的nginx-ingress配置文档https://help.aliyun.com/document_detail/42205.html 容器K8s配置方案 如果您的服务部署在K8s上&#xff0c;K8s会将真实的客户端IP记录在X-Original-Forwarded-For字段中&#xff0c;并将WAF回源地址记录在X-Forwarded-For字段中。您需要…...

MySQL(4)索引实践(2)

一、分页优化 limit 1000 10&#xff0c; 其实不是只查询出10条记录&#xff0c;mysql底层会查询出1100条&#xff0c;然后舍去前1000条 所以&#xff0c;随着页的增多&#xff0c;查询效率会降低 1、可以使用取范围的方式比如id>1000 方式优化 2、使用关联查询优化&#xf…...

Kafka【命令行操作】

Kafka 命令行操作 Kafka 主要包括三大部分&#xff1a;生产者、主题分区节点、消费者。 1、Topic 命令行操作 也就是我们 kafka 下的脚本 kafka-topics.sh 的相关操作。 常用命令行操作 参数 描述 --bootstrap-server <String: server toconnect to> 连接的Kafka …...

springboot配置注入增强(二)属性注入的原理

一 原理 1 配置的存储 springboot在启动的时候会后构建一个org.springframework.core.env.Environment类型的对象&#xff0c;这个对象就是用于存储配置&#xff0c;如图springboot会在启动的最开始创建一个Environment对象 这个webApplicationType的枚举是在new SpringAppli…...

Android 使用Camera1实现相机预览、拍照、录像

1. 前言 本文介绍如何从零开始&#xff0c;在Android中实现Camera1的接入&#xff0c;并在文末提供Camera1Manager工具类&#xff0c;可以用于快速接入Camera1。 Android Camera1 API虽然已经被Google废弃&#xff0c;但有些场景下不得不使用。 并且Camera1返回的帧数据是NV21…...

2024字节跳动校招面试真题汇总及其解答(四)

12.Java的类加载机制 Java的类加载机制是指将描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这个过程被称作虚拟机的类加载机制。 类的加载过程分为以下五个阶段: 加载:将Class文件从磁盘读入内存,并…...

网页的快捷方式打开自动全屏--Chrome、Firefox 浏览器相关设置

Firefox 的全屏方式与 Chrome 不同&#xff0c;Chrome 自带全屏模式以及APP模式&#xff0c;通过简单的参数即可设置&#xff0c;而Firefox暂时么有这个功能&#xff0c;Firefox 的全屏功能可以通过全屏插件实现。 全屏模式下&#xff0c;按 F11 不会退出全屏&#xff0c;鼠标…...

LabVIEW使用ModbusTCP协议构建分布式测量系统

LabVIEW使用ModbusTCP协议构建分布式测量系统 分布式测量系统主要用于监控远程物体。这种系统允许对系统用户获得的数据进行全面的数据收集、处理、存储和组织访问。它们可能包括许多不同类型的传感器。 在任何具有互联网接入的个人计算机上运行的软件都会发送来自传感器的测…...

unity学习第1天

本身也具有一些unity知识&#xff0c;包括Eidtor界面使用、Shader效果实现、性能分析&#xff0c;但对C#、游戏逻辑不太清楚&#xff0c;这次想从开发者角度理解游戏&#xff0c;提高C#编程&#xff0c;从简单的unity游戏理解游戏逻辑&#xff0c;更好的为工作服务。 unity201…...

Spring Boot实现对文件进行压缩下载

在Web应用中&#xff0c;文件下载功能是一个常见的需求&#xff0c;特别是当你需要提供用户下载各种类型的文件时。本文将演示如何使用Spring Boot框架来实现一个简单而强大的文件下载功能。我们将创建一个RESTful API&#xff0c;通过该API&#xff0c;用户可以下载问价为ZIP压…...

Mac专用投屏工具AirServer 7 .27 for Mac中文免费激活版

AirServer 7 .27 for Mac中文免费激活版是一款Mac专用投屏工具&#xff0c;能够通过本地网络将音频、照片、视频以及支持AirPlay功能的第三方App&#xff0c;从 iOS 设备无线传送到 Mac 电脑的屏幕上&#xff0c;把Mac变成一个AirPlay终端的实用工具。 目前最新的AirServer 7.2…...

LabVIEW使用巴特沃兹低通滤波器过滤噪声

LabVIEW使用巴特沃兹低通滤波器过滤噪声 设备采集到的数据往往都有噪声&#xff0c;有时候这些数据要做判断使用&#xff0c;如果不处理往往会影响最终的结果。可以使用动态平滑&#xff0c;或者中值滤波等方法。这里介绍使用巴特沃斯低通滤波&#xff0c;也是非常方便的。 下…...

【Realtek sdk-3.4.14b】RTL8197FH-VG和RTL8812F自适应认证失败问题分析及修改

WiFi自适应认证介绍 WiFi 自适应可以理解为针对WiFi的产品,当有外部干扰信号通过,WiFi产品自动停止发出信号一段时间,以达到避让的目的。 问题描述 2.4G和5G WiFi自适应认证失败,信道停止发送信号时间过长,没有在规定时间内停止发包 2.4G截图 问题分析 根据实验室描述可以…...

SpringBoot 的版本、打包、Maven

一、SpringBoot 结构、集成 1.1、集成组件 Spring Core&#xff1a;Spring的核心组件&#xff0c;提供IOC、AOP等基础功能&#xff0c;是Spring全家桶的基础。 Spring Boot&#xff1a;一个基于Spring Framework的快速开发框架&#xff0c;可以快速创建独立的、生产级别的…...

不同类型程序的句柄研究

先做一个winform程序&#xff1b;随便放几个控件&#xff1b; 用窗口句柄查看工具看一下&#xff1b;form和上面的每个控件都有一个句柄&#xff1b; 然后看一下记事本&#xff1b;记事本一共包含三个控件&#xff0c;各自有句柄&#xff1b; 这工具的使用是把右下角图标拖到要…...

【Godot】解决游戏中的孤立/孤儿节点及分析器性能问题的分析处理

Godot 4.1 因为我在游戏中发现&#xff0c;越运行游戏变得越来越卡&#xff0c;当你使用 Node 节点中的 print_orphan_nodes() 方法打印信息的时候&#xff0c;会出现如下的孤儿节点信息 孤儿节点信息是以 节点实例ID - Stray Node: 节点名称(Type: 节点类型) 作为格式输出&a…...

国家网络安全宣传周知识竞赛活动小程序界面分享

国家网络安全宣传周知识竞赛活动小程序界面分享...

mysql的判断语句

if if 用于做条件判断&#xff0c;具体的语法结构如下&#xff0c;在 if 条件判断的结构中&#xff0c; ELSE IF 结构可以有多个&#xff0c;也可以没有。 ELSE 结构可以有&#xff0c;也可以没有。 IF 条件1 THEN ..... ELSEIF 条件2 THEN -- 可选 ..... ELSE -- 可选 .....…...

ArcGIS Maps SDK for JavaScript系列之四:添加自定义底图

目录 Basemap类介绍Basemap类的常用属性Basemap类的常用方法 使用Basemap添加自定义底图引用Basemap引用切片图层创建一个新的Basemap对象将自定义图层应用到地图视图中引入并创建Camera对象引入并创建SceneView对象 Basemap类介绍 Basemap类是ArcGIS Maps SDK for JavaScript…...

Learn Prompt-角色扮演

模拟面试​ 当你在新闻中读到更多关于ChatGPT的内容时&#xff0c;你会听说ChatGPT可以代替医生、面试官、教师、律师等。但如果你想在实践中使用它&#xff0c;除了使用简单的提示或例子&#xff0c;你还可以根据不同的场景为ChatGPT设置不同的角色&#xff0c;这样我们就可以…...

《动手学深度学习 Pytorch版》 6.1 从全连接层到卷积

6.1.1 不变性 平移不变性&#xff08;translation invariance&#xff09;&#xff1a; 不管检测对象出现在图像中的哪个位置&#xff0c;神经网络的前面几层应该对相同的图像区域具有相似的反应&#xff0c;即为“平移不变性”。 局部性&#xff08;locality&#xff09;&…...

南京做网站最好的公司/seo服务价格表

题目背景 本题测试数据为随机数据&#xff0c;在考试中可能会出现构造数据让 SPFA 不通过&#xff0c;如有需要请移步 P4779 。 题目描述 如题&#xff0c;给出一个有向图&#xff0c;请输出从某一点出发到所有点的最短路径长度。 输入格式 第一行包含三个整数 n,m,sn,m,sn,m…...

杭州做网站设计公司/优化器

语音合成&#xff1a;也被称为文本转换技术&#xff08;TTS&#xff09;&#xff0c;它是将计算机自己产生的、或外部输入的文字信息转变为可以听得懂的、流利的口语输出的技术。 刚开始项目需求订单实时播报&#xff0c;最初采用的H5的语音合成Speech Synthesis API&#xff…...

深圳建设厅网站/百度搜索引擎优化

ASP.NET AJAX 1.0的官方文档在不久之前发布了&#xff0c;它包括了Sample&#xff0c;Tutorial&#xff0c;并且为API补充了示例&#xff08;其实没有多少更新&#xff09;。关键的是&#xff0c;现在的官方文档已经提供打包下载了&#xff0c;不少朋友&#xff08;也包括我&am…...

wordpress显示指定分类目录/宁波seo外包推广软件

前段时间组织优化我们的原生模块 API&#xff08;iOS、Android 模块封装成 JavaScript 接口&#xff09;&#xff0c;于是学习了几篇 JavaScript API 设计的文章&#xff0c;尽管是旧文&#xff0c;但受益匪浅&#xff0c;这里记录一下。 好的 API 设计&#xff1a;在自描述的同…...

网站建设全套教程/潍坊网站开发公司

GitHub&#xff1a;https://github.com/JDawnF 1.缓存穿透 指查询一个一定不存在的数据&#xff0c;由于缓存是不命中时被动写( 被动写&#xff0c;指的是从 DB 查询到数据&#xff0c;则更新到缓存中 )的&#xff0c;并且处于容错考虑&#xff0c;如果从 DB 查不到数据则不写…...

文教设施网站制作方案/聊城网站seo

614 D 题意210 题意115 还要加一句话&#xff1a;输出操作后的序列。 解 思路&#xff1a; 只有两种操作是合法的&#xff1a; 将所有水平值最小的技能升高将水平值最高的技能升高到 \(A\)于是可以枚举一维&#xff0c;二分一维 解法&#xff1a;处理一个初始水平值的前缀和&am…...