在小程序开发中使用npm的方法


Posted in Javascript onOctober 17, 2018

微信小程序在 2.2.1 版本后增加了对 npm 包加载的支持,使得小程序支持使用 npm 安装第三方包。

1. 在小程序中加载 npm 包

npm install miniprogram-datepicker --production

node_modules可以 在小程序根目录下,也可以存在于小程序根目录下的各个子目录中。但是不可以 在小程序根目录外。使用--production选项,可以减少安装一些业务无关的 npm 包,从而减少整个小程序包的大小。

2. 构建 npm 包

在微信小程序开发工具的「工具」菜单下点击「构建 npm」命令,进行 npm 包的构建,此构建可以将 npm 包构建成在小程序中可加载使用的包。

node_modules 目录不会参与编译、上传和打包中,所以小程序想要使用 npm 包必须走一遍“构建 npm”的过程,在最外层的 node_modules 的同级目录下会生成一个 miniprogram_npm 目录,里面会存放构建打包后的 npm 包,也就是小程序真正使用的 npm 包。

构建打包分为两种:小程序 npm 包会直接拷贝构建文件生成目录下的所有文件到 miniprogram_npm 中;其他 npm 包则会从入口 js 文件开始走一遍依赖分析和打包过程(类似 webpack)。

寻找 npm 包的过程和 npm 的实现类似,从依赖 npm 包的文件所在目录开始逐层往外找,直到找到可用的 npm 包或是小程序根目录为止。

在小程序开发中使用npm的方法

构建完成后还需要确认项目已勾选了「使用 npm 模块」。

在小程序开发中使用npm的方法

3.使用npm包

js 中引入 npm 包:

const package = require('packageName')

使用 npm 包中的自定义组件:

{
 "usingComponents": {
  "datepicker": "miniprogram-datepicker"
 }
}

miniprogram-datepicker组件运行效果

在小程序开发中使用npm的方法

其他

微信小程序npm支持文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/npm.html

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript 强制类型转换函数
May 17 Javascript
javascript学习(二)javascript常见问题总结
Jan 02 Javascript
使用phantomjs进行网页抓取的实现代码
Sep 29 Javascript
JS基于面向对象实现的放烟花效果
May 07 Javascript
jquery实现用户信息修改验证输入方法汇总
Jul 18 Javascript
jQuery中常用的遍历函数用法实例总结
Sep 01 Javascript
AngularJs Scope详解及示例代码
Sep 01 Javascript
bootstrap Table服务端处理分页(后台是.net)
Oct 19 Javascript
利用d3.js实现蜂巢图表带动画效果
Sep 03 Javascript
使用flow来规范javascript的变量类型
Sep 12 Javascript
微信小程序实现比较功能的方法汇总(五种方法)
Mar 07 Javascript
jquery实现穿梭框功能
Jan 19 jQuery
浅谈HTTP 缓存的那些事儿
Oct 17 #Javascript
使用angular-cli webpack创建多个包的方法
Oct 16 #Javascript
element-ui的回调函数Events的用法详解
Oct 16 #Javascript
基于vue-upload-component封装一个图片上传组件的示例
Oct 16 #Javascript
Postman的下载及安装教程详解
Oct 16 #Javascript
Vue.js 时间转换代码及时间戳转时间字符串
Oct 16 #Javascript
详解angular2如何手动点击特定元素上的点击事件
Oct 16 #Javascript
You might like
PHP新手上路(十一)
2006/10/09 PHP
php实现的百度搜索某地天气的小偷代码
2014/04/23 PHP
Laravel构建即时应用的一种实现方法详解
2017/08/31 PHP
javascript 无提示关闭窗口脚本
2009/08/17 Javascript
使用JavaScript switch case 另类写法
2010/03/14 Javascript
JavaScript简单实现网页回到顶部功能
2013/11/12 Javascript
JavaScript中实现map功能代码分享
2015/06/11 Javascript
js+css3制作时钟特效
2016/10/16 Javascript
jQuery实现字符串全部替换的方法
2016/12/12 Javascript
从零开始学习Node.js系列教程四:多页面实现数学运算的client端和server端示例
2017/04/13 Javascript
简单的Vue SSR的示例代码
2018/01/12 Javascript
详解vue中点击空白处隐藏div的实现(用指令实现)
2018/04/19 Javascript
其实你可以少写点if else与switch(推荐)
2019/01/10 Javascript
pm2启动ssr失败的解决方法
2019/06/29 Javascript
layui 数据表格 点击分页按钮 监听事件的实例
2019/09/02 Javascript
详解Vue中CSS样式穿透问题
2019/09/12 Javascript
python 参数列表中的self 显式不等于冗余
2008/12/01 Python
用python结合jieba和wordcloud实现词云效果
2017/09/05 Python
在双python下设置python3为默认的方法
2018/10/31 Python
python中使用paramiko模块并实现远程连接服务器执行上传下载功能
2020/02/29 Python
django-利用session机制实现唯一登录的例子
2020/03/16 Python
在pycharm创建scrapy项目的实现步骤
2020/12/01 Python
Python+unittest+requests+excel实现接口自动化测试框架
2020/12/23 Python
expedia比利时:预订航班+酒店并省钱
2018/07/13 全球购物
会计电算化个人求职信范文
2014/01/24 职场文书
新春联欢会主持词
2014/03/24 职场文书
竞选学生会演讲稿
2014/04/25 职场文书
综合实践活动总结
2014/05/05 职场文书
小学教师师德承诺书
2014/05/23 职场文书
视光学专业自荐信
2014/06/24 职场文书
贸易经济专业自荐书
2014/06/29 职场文书
2014教师教育实践活动对照检查材料思想汇报
2014/09/21 职场文书
民政局副局长民主生活会个人整改措施
2014/10/04 职场文书
学校办公室主任岗位职责
2015/04/01 职场文书
三八妇女节主持词
2015/07/04 职场文书
Python之matplotlib绘制饼图
2022/04/13 Python