前言
引入第三方模块时,我遇到了很多坑。

首先是微信、第三方模块的文档描述不清楚。
其次。搜索到的博客,大部分是抄的文档 / 相互转载抄袭。作用有限。

于是,我自己做了各种条件下的测试。
解决各种情况的引入Npm模块的报错、失败。希望对你有帮助。

下面以引入Vant 小程序版 为例,开始测试。

1、小程序路径在中文目录下

在中文路径下新建项目,引入UI失败。

将中文改为英文,重启项目。

UI显示正确。

2、小程序目录下没有初始化package.json文件
微信的“引入npm模块”文档,第一条就是npm命令。
没有提示,让你初始化package文件。那我们来试下:

看到没有,报错了。提示你没有找到package.json。
我们再看下项目目录,发现多了两个文件。

"vant-weapp"文件夹已经被安装到了node_modules目录下。
但是package.json不存在,没有保存对vant-weapp的引用。

我们尝试在微信开发者工具构架npm。会提示你:

下面我们补上这条命令:

一路回车。再次运行:

终于成功了。请你记住,要在小程序项目刚初始化时。

npm i vant-weapp -S --production
1
在这条命令运行之前,先执行 npm init,初始化package.json。

3、引入npm模块时,使用了cnpm
执行cnpm。没有报错。
node_modules目录下生成了2个文件夹。一个带版本号,一个不带。

在微信开发工具“构建npm”。

我们再检查下小程序的miniprogram_npm目录。发现引入了带版本号的npm模块。

接下来。我们关闭微信开发者工具,把这个文件夹改名为“vant-weapp”。

再次运行:

成功!!

以后安装模块可以直接用npm命令。cnpm,也行,但记得手动重命名,删除文件夹的版本号。

4、其它
其它还有一些失败的原因。
比如:

1、json文件中引用模块时,路径写错。
会导致:

这个路径不要傻傻的按照Vant文档的写:

/path/to/vant-weapp/dist/button/index

应该这么写:

前面不用加“…/”。文件夹一定要对应。

2、使用npm模块未勾选

3、组件化引用文件时。(不用npm引入)
引入的组件依赖于其他的组件。引入不全,导致报错。
但npm安装,是把所有的包下载了。应该没这个问题。

结语
---------------------
作者:黑夜的风
来源:CSDN
原文:https://blog.csdn.net/chanlingmai5374/article/details/84922830
版权声明:本文为博主原创文章,转载请附上博文链接!

小程序使用npm模块(引入第三方UI),报错的多种解决办法。的更多相关文章

  1. npm run dev 启动项目报错我的解决办法

    我的报错截屏 解决方案   1.    config文件中 index 文件中的 host 值如果是数字串就将其改为 localhost 2.    再次尝试 如果有遇到其他问题阔以将 node-mo ...

  2. 微信小程序警告设置 enable-flex 属性以使 flexbox 布局生效的解决办法

    微信小程序警告设置 enable-flex 属性以使 flexbox 布局生效的解决办法 具体情况: scroll-view 滚动,设置 display:flex 不生效并警告设置 enable-fl ...

  3. Eclipse中引入com.sun.image.codec.jpeg包报错的完美解决办法

    转: Eclipse中引入com.sun.image.codec.jpeg包报错的完美解决办法  更新时间:2018年02月14日 17:13:03   投稿:wdc   我要评论   Java开发中 ...

  4. vue-cli创建的项目中引入第三方库报错 'caller', 'calle', and 'arguments' properties may not be...

    http://blog.csdn.net/sophie_u/article/details/76223978 以在vue中引入mui第三方库为例: 虽然针对vue,有单独的vue-mui库可以使用,但 ...

  5. 微信小程序上传后发布或者体验版测试无数据解决办法

    在做微信小程序开发的过程中,发现小程序在本地调用接口的数据都显示,但是上传之后,发现手机体验没有数据.以下为解决办法: 1.先清除缓存试试. 2.打开微信小程序工具右上角的详情——项目设置,将“不校验 ...

  6. 小程序插件集成functional-page-navigator真机调试报错

    小程序集成插件 插件里面有functional-page-navigator标签 一."小程序开发版已过期,请重新扫码连接" 真机在调用插件的时候报错 "小程序开发版已过 ...

  7. 小程序Page里的函数比app.js先执行的解决办法

    问题描述: 当我们初始化一个小程序时,默认文件 app.js 中有onLaunch函数, onLaunch: function () { console.log("onLaunch" ...

  8. vue-cli创建的项目中引入第三方库报错'caller', 'calle', and 'arguments' properties may not be...

    本文链接:https://blog.csdn.net/Sophie_U/article/details/76223978 问题: 在vue的main.js中引入mui.min.js时,报错. 如上,单 ...

  9. 安卓小程序的一次bug调试,报错:java.lang.NullPointerException,logcat学习

    做实验的时候,调试了很久后模拟器执行后,app还是会崩溃并停止运行,错误如下. 因为初学,所以也不知道怎么使用调试工具,也不懂看日志,经过学习后尝试这查看了LogCat日志上面有这样的提示: 其中引起 ...

随机推荐

  1. POJ2195:Going Home (最小费用最大流)

    Going Home Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 26212   Accepted: 13136 题目链接 ...

  2. Idea 怎么远程debug

    注意的问题:远程debug别人的服务器只能开一个debug,所以当你的同事比你先远程debug同一台服务器时,你应该报Error running 某某ip地址 .unable to open debu ...

  3. spoj p104 Matrix-Tree定理

    这个问题就是经典的生成树记数问题,题目为spoj p104 highway. 首先我们引入Matrix-Tree定理,由kirchhoff证明,定理的概述为,对于图G,我们定义若干个矩阵, D[G], ...

  4. Csharp 非安全代码

    using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { c ...

  5. python3 线程_threading模块

    '''并发:同一个时间段内运行多个程序的能力 进程就是一个程序在一个数据集上的一次动态执行过程.进程一般由程序.数据集.进程控制块三部分组成 程序:食谱数据集:鸡蛋.牛奶.糖等进程控制块:记下食谱做到 ...

  6. requests-html的js执行功能简单使用

    #!/usr/bin/env python # encoding: utf-8 import asyncio from requests_html import HTMLSession import ...

  7. WEB字体,多列布局和伸缩盒

    WEB字体 语法 @font-face{ font-family:""; src:url() format() ... } 兼容性写法 @font-face { font-fami ...

  8. 【转】Spring Bean属性解析

    转载自:http://wenku.baidu.com/view/30c7672cb4daa58da0114ae2.html Bean所以属性一览: <bean id="beanId&q ...

  9. java的maven项目(一)

    Maven项目管理工具 Svn + eclipse  约等于  maven量级 1       Maven的简介 1.1     什么是maven 是apache下的一个开源项目,是纯java开发,并 ...

  10. MATLAB作图方法与技巧(三)

    1.利用指令plot绘制圆的参数方程x = sin(t),y = cos(t),(0<=t<=2*pi)的曲线图. 代码如下 t = linspace(0,2*pi,100); x = s ...