xgplayer-service-miniprogram

0.6.0 • Public • Published

#点播视频地址获取SDK(微信小程序版本)

小程序npm发包约束

小程序支持的第三方npm存在诸多约束:

  • npm 包要求根目录下必须有构建文件生成目录(默认为 miniprogram_dist 目录),此目录可以通过在 package.json 文件中新增一个 miniprogram 字段来指定,比如:
{
  "name": "miniprogram-custom-component",
  "version": "1.0.0",
  "description": "",
  "miniprogram": "dist",
  "devDependencies": {},
  "dependencies": {}
}
  • 小程序 npm 包里只有构建文件生成目录会被算入小程序包的占用空间,上传小程序代码时也只会上传该目录的代码。如果小程序 npm 包有一些测试、构建相关的代码请放到构建文件生成目录外。另外也可以使用.npmignore文件来避免将一些非业务代码文件发布到 npm 中。

  • 测试、构建相关的依赖请放入 devDependencies 字段中避免被一起打包到小程序包中。

  • ⚠️不支持依赖 nodejs 的内置库,比如 http, axios等等,替代策略可以是自己封装📦一个基于微信小程序内部http请求的api(wx.request)的想网络请求轮子,或者使用 flyio 支持度,版本兼容行都挺好

  • 微信小程序的环境(jscore),JsCore是一个没有窗口对象的环境, window, XmlHttpRequest等不能使用

使用指南

  1. 安装npm包
npm install xgplayer-service-miniprogram --production

PS: 该安装目录可以是 根目录下的各个子目录,比如dist目录, 但不允许 node_modules 在小程序根目录外。 如果选择的安装目录不存在node_modules文件夹, 可以自建,或者先执行一遍 npm init 命令(否则后面开发者工具会报,不存在构建的npm包的错误)
为兼容不同的开发者工具版本,使用 --production 最好

  1. 构建npm包 打开开发者工具菜单的工具栏,选择-->构建npm
    如果报错,则第一步存在问题,查明原因再试

  2. 在开发者工具 详情栏 勾选 '使用npm模块'

  3. 项目中引入使用构建的npm

const myPackage = require('xgplayer-service-miniprogram')
const service = myPackage()

service.url(token)
      .then(res => {
        console.log(res)
        // 业务todo
      })
      .catch(err => {
        console.log(err)
      })

支持情况

原生小程序,mpvue框架 按照正常步骤是无异常的,wepy框架下需要正确使用构建的npm包路径,可能原因是wepy打包第三方npm包的方式不同,构建时会发现存在miniprogram_npm和npm两个文件夹,npm中的包是全局可用的,所以可以将miniprogram_npm中需要的包复制到npm文件夹即可。

Dependencies (1)

Dev Dependencies (7)

Package Sidebar

Install

npm i xgplayer-service-miniprogram

Weekly Downloads

5

Version

0.6.0

License

MIT

Unpacked Size

11.2 kB

Total Files

4

Last publish

Collaborators

  • gemstone
  • zhangxin92
  • bethelight
  • goldvideo