小程序-基础加强(二):使用npm包

这篇具有很好参考价值的文章主要介绍了小程序-基础加强(二):使用npm包。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

使用npm包


1.小程序对npm的支持与限制

目前,小程序中已经支持使用npm安装第三方包,从而来提高小程序的开发效率。但是,在小程序中使用npm包有如下3个限制:

①不支持依赖于Node.js内置库的包

②不支持依赖于浏览器内置对象的包

③不支持依赖于C++插件的包

总结:虽然npm上的包有千千万,但是能供小程序使用的包却"为数不多“

使用npm包-Vant Weapp(UI组件库)


1.什么是Vant Weapp

Vant Weapp是有赞前端团队开源的一套小程序UI组件库,助力于开发者快速搭建小程序应用。她所使用的是MIT开源许可协议,对商业使用比较友好。

小程序npm,微信小程序,npm,小程序,vue.js

2.安装Vant 组件库

在小程序项目中, 安装Vant组件库分为如下3个步骤:

①通过npm安装(建议指定版本为@1.3.3)

npm i @vant/weapp@1.3.3 -S --production

(在此之前,需要确定有package文件;如果没有使用:npm init -y命令)

②构建npm包

小程序npm,微信小程序,npm,小程序,vue.js

③修改app.json(删除使用v2 )

小程序npm,微信小程序,npm,小程序,vue.js

小程序npm,微信小程序,npm,小程序,vue.js3.使用Vant组件

安装完Vant组件库之后,可以在app.jsonusingComponents节点中引入需要的组件,即可在wxml中直接使用组件。示例代码如下:

小程序npm,微信小程序,npm,小程序,vue.js

  4.定制全局主题样式

小程序npm,微信小程序,npm,小程序,vue.js

https://developer.mozilla.org/zh-CN/docs/Web/CSS/Using_CSS_custom_properties

 小程序npm,微信小程序,npm,小程序,vue.js

5.定制全局主题样式

小程序npm,微信小程序,npm,小程序,vue.js

查看文档,查看定制样式代码

使用npm包-API Promise化


1.基于回调函数的异步API的特点

默认情况下,小程序官方提供的异步API都是基于回调函数实现的,例如,网络请求的API需要按照如下的方式调用:

小程序npm,微信小程序,npm,小程序,vue.js缺点:容易造成回调地狱的问题,代码的可读性、维护性差!

2.什么是API Promise化

API Promise化,指的是通过额外的配置,将官方提供的、基于回调函数的异步API,升级改造为基于Promise的异步API,从而提高代码的可读性、维护性,避免回调地狱的问题。

3.实现API Promise化

在小程序中,实现API Promise化主要依赖于miniprogram-api-promise这个第三方的npm包。它的安装和使用步骤如下:

小程序npm,微信小程序,npm,小程序,vue.js

 (在小程序中,安装的包会在node_modules中,但是不能直接使用,必须引入到miniprogram_npm,就要重新构建npm)

当重新构建时候,需要删除miniprogram_npm文件夹,避免构建失败。当包在miniprogram_npm文件夹构建完中出现就可以使用了。

小程序npm,微信小程序,npm,小程序,vue.js

 4.调用Promise化之后的异步API

小程序npm,微信小程序,npm,小程序,vue.js

全局数据共享


1.什么是全局数据共享

全局数据共享(又叫做:状态管理)是为了解决组件之间数据共享的问题。

开发中常用的全局数据共享方案有:Vuex、Redux、MobX等。

小程序npm,微信小程序,npm,小程序,vue.js

 2.小程序中的全局数据共享方案

在小程序中,可使用mobx-miniprogram配合mobx-miniprogram-bindings实现全局数据共享。其中:

  • mobx-miniprogram用来创建Store实例对象
  • mobx-miniprogram-bindings用来把Store中的共享数据或方法,绑定到组件或页面中使用

小程序npm,微信小程序,npm,小程序,vue.js

 全局数据共享-MobX


1.安装MobX相关的包

小程序npm,微信小程序,npm,小程序,vue.js

 2.创建MobX的Store实例

小程序npm,微信小程序,npm,小程序,vue.js

 3.将Store中的成员绑定到页面

小程序npm,微信小程序,npm,小程序,vue.js

3.将Store中的成员绑定到页面

小程序npm,微信小程序,npm,小程序,vue.js

 4.在页面上使用Store中的成员

小程序npm,微信小程序,npm,小程序,vue.js

 5.将Store中的成员绑定到组件中

小程序npm,微信小程序,npm,小程序,vue.js

 6.在组件中使用Store中的成员

小程序npm,微信小程序,npm,小程序,vue.js

 分包-基础概念


1.什么是分包

分包指的是把一个完整的小程序项目,按照需求划分为不同的子包,在构建时打包成不同的分包,用户在使用时按需进行加载

2.分包的好处

对小程序进行分包的好处主要有以下两点:

  • 可以优化小程序首次启动的下载时间
  • 多团队共同开发时可以更好的解耦协作

3.分包前项目的构成

小程序npm,微信小程序,npm,小程序,vue.js

4.分包后项目构成 

分包后,小程序项目由1个主包+多个分包组成:

  • 主包:一般只包含项目的启动页面TabBar页面、以及所有分包都需要用到的一些公共资源
  • 分包:只包含和当前分包有关的页面和私有资源

小程序npm,微信小程序,npm,小程序,vue.js

5.分包的加载规则

小程序npm,微信小程序,npm,小程序,vue.js6.分包的体积限制

 分包-使用分包


 1.配置方法

小程序npm,微信小程序,npm,小程序,vue.js

 小程序npm,微信小程序,npm,小程序,vue.js

 2.打包原则

①小程序会按subpackages的配置进行分包,subpackages之外的目录将被打包到主包中

②主包也可以有自己的pages(即最外层的pages字段)

③tabBar页面必须在主包内

④分包之间不能互相嵌套

3.引用原则

小程序npm,微信小程序,npm,小程序,vue.js

分包-独立分包 


1.什么是独立分包

独立分包本质上也是分包,只不过它比较特殊,可以独立于主包和其他分包而单独运行。

小程序npm,微信小程序,npm,小程序,vue.js2.独立分包和普通分包的区别

小程序npm,微信小程序,npm,小程序,vue.js

 3.独立分包的应用场景

开发者可以按需,将某些具有一定功能独立性的页面配置到独立分包中。原因如下:

  • 当小程序从普通的分包页面启动时,需要首先下载主包
  • 而独立分包不依赖主包即可运行,可以很大程度上提升分包页面的启动速度

注意:一个小程序中可以有多个独立分包。

4.独立分包的配置方法

小程序npm,微信小程序,npm,小程序,vue.js

小程序npm,微信小程序,npm,小程序,vue.js

 5.引用原则

独立分包和普通分包以及主包之间,是相互隔绝的,不能相互引用彼此的资源!例如:

①主包无法引用独立分包内的私有资源

②独立分包之间,不能相互引用私有资源

③独立分包和普通分包之间,不能相互引用私有资源

特别注意:独立分包中不能引用主包内的公共资源

分包-分包预下载


 1.什么是分包预下载

分包预下载指的是:在进入小程序的某个页面时,由框架自动预下载可能需要的分包,从而提升进入后续分包页面时的启动速度。

2.配置分包预下载

预下载分包的行为,会在进入指定的页面时触发。在app.json中,使用preloadRule节点定义分包的预下载规则,示例代码如下:

小程序npm,微信小程序,npm,小程序,vue.js

 3.分包预下载的限制

同一个分包中的页面享有共同的预下载大小限额2M,例如:

小程序npm,微信小程序,npm,小程序,vue.js

案例-自定义tabBar 


1.案例效果

小程序npm,微信小程序,npm,小程序,vue.js

 在此案例中,用到的主要知识点如下:

  • 自定义组件
  • Vant组件库
  • MobX数据共享
  • 组件样式隔离
  • 组件数据监听器
  • 组件的behaviors
  • Vant样式覆盖

2.实现步骤

自定义tabBar分为3大步,分别是:

①配置信息

②添加tabBar组件

③编写tabBar代码

小程序npm,微信小程序,npm,小程序,vue.js

小程序npm,微信小程序,npm,小程序,vue.js文章来源地址https://www.toymoban.com/news/detail-740472.html

到了这里,关于小程序-基础加强(二):使用npm包的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序使用 npm 包,举例图文详解

    下载安装,配置npm环境变量,不懂得可以上网查教程,本文不再描述 1、初始化 package.json 2、勾选允许使用 npm(新版微信小程序开发工具忽略这一步) 3、下载 npm 包 4、构建 npm 不清楚的可以往下看详解 1、初始化 package.json 在小程序开发工具\\\"终端\\\"输入: 执行命令成功后自动

    2023年04月09日
    浏览(46)
  • 【小程序 - 加强】自定义组件、使用npm包、全局数据共享、分包_05

    目录 一、自定义组件 1. 组件的创建与引用 1.1 创建组件 1.2 引用组件 1.2.1 局部引用组件 1.2.2 全局引用组件 1.2.3 全局引用 VS 局部引用 1.2.4 组件和页面的区别 2. 样式 2.1 组件样式隔离 2.2 组件样式隔离的注意点 2.3 修改组件的样式隔离选项 2.4 styleIsolation 的可选值 3. 数据

    2024年02月07日
    浏览(41)
  • 微信小程序使用 npm 安装第三方包

    微信小程序支持使用 npm 安装第三方包。 在小程序根目录下执行 npm install 第三方包名 安装 npm 包。 点击开发者工具中的菜单栏: 工具 -- 构建 npm 完成构建。 就可以使用 npm 包了。

    2024年02月11日
    浏览(73)
  • 微信小程序在使用vant组件库时构建npm报错

    在跟着vant官方进行使用步骤一步步操作时,由于要构建NPM,但NPM包在App配置文件的外部 所以在做下图这一步时: 接着再进行npm构建时会报错 解决方法 :修改

    2024年02月13日
    浏览(57)
  • 【微信小程序】-- 使用 npm 包 - API Promise化(四十二)

    💌 所属专栏:【微信小程序开发教程】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘   大家好,又见面了,

    2023年04月09日
    浏览(39)
  • 微信小程序vant安装使用过程中遇到无法构建npm的问题

    官网地址,然而如果完全按照这个教程来,实际上是缺少步骤的,需要补充一些步骤(参考https://www.bilibili.com/video/BV1vL41127Er)

    2024年02月03日
    浏览(59)
  • 如何在微信小程序里面使用npm安装第三方插件(以安装vant ui为例)

    1.在cmd里或者是终端里,找到对应的项目,并执行下面的命令,用来初始化package.json文件。 2.勾选下图选项 3.执行下面的命令安装vant ui 然后你会发现多了一个node_modules文件, 里面存的就是第三方组件。 4.最后一步,每次安装完一个新的第三方插件都要执行“构建npm” 执行完

    2024年02月14日
    浏览(68)
  • 微信小程序基础使用

    微信小程序文件类型 微信小程序主要提供了 4 种文件类型: 类型名称 作用 是否必须存在 .wxml 用于页面的布局结构,相当于网页中 .html 文件 是 .wxss 用于页面的样式,相当于网页中的 .css 文件 否 .js 用于页面的逻辑 是 .json 用于页面的配置 否 文件作用 文件名 作用 是否必须

    2024年02月09日
    浏览(32)
  • 微信小程序 -- npm 支持

    目录 npm 支持 1. 构建 npm 2. 自定义构建 npm 3. Vant 组件的使用方式 4. Vant 组件的样式覆盖 1. 构建 npm 目前小程序已经支持使用 npm 安装第三方包,但是这些 npm 包在小程序中不能够直接使用,必须得使用小程序开发者工具进行构建后才可以使用。 为什么得使用小程序开发者工具

    2024年02月22日
    浏览(33)
  • 微信小程序的基础标签及使用(入门)

          我们以前在html中使用的很多标签在微信小程序中都无法使用例如div,h1-h6,span等等。  当然在小程序中会出现很多的标签提供开发者使用: view :为块元素相对于以前我们所使用的的div text :可以使当做span使用或者h1-h6          scroll-view: 可滚动视图区域加入属性可

    2024年02月11日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包