微信小程序构建npm步骤

目录

小程序项目环境

一、初始化npm项目

二、安装npm包

三、构建npm

组件测试


小程序项目环境

一般情况下,项目环境应该是通用的,没啥事儿。万一有啥情况,环境也是一个解决思路

软件:微信开发者工具

版本:1.06.2409140 win32-x64

调试基础库:3.6.5

微信小程序模板:JS-模板

终端方面:

  • 第一种:这里使用没问题

  • 第二种:外部终端窗口

一、初始化npm项目

  • 创建 package.json 文件,通过 npm init -y

    操作:这个命令用于快速初始化一个新的npm项目, -y 参数表示使用默认设置自动填充package.json 文件,而不需要手动输入信息。

    结果:在项目根目录下生成一个package.json文件,该文件包含了项目的元信息和依赖关系等。

  • 操作如下:

    • 可以看到目录中生成了package.json,并且具备一些默认值

二、安装npm包

  • npm intall xxxxx

    操作:这个命令用于安装指定的npm包(xxxxx代表包的名称)。如果包已经存在于npm仓库中,npm将会下载并安装它及其依赖。

    结果:在项目根目录下生成一个node_modules文件夹,其中包含了安装的npm包及其依赖。同时,package.json文件中的dependencies字段会更新,以记录安装的包及其版本。

  • 通过 npm install weui-miniprogram 引入 weui-miniprogram 微信原生组件库。

    可以看到生成了以下内容

    node_modules weui-miniprogram

    package-lock.json

三、构建npm

  • 构建 npm,通过 左上角[工具/构建npm]

    操作:在微信开发者工具中,点击菜单栏的“工具”选项,然后选择“构建npm”。这个操作是针对微信小程序项目的,它会自动处理node_modules文件夹中的npm包,并将它们转换为小程序可以识别的格式。

    结果:在项目根目录下生成一个 miniprogram_npm 文件夹,其中包含了转换后的npm包。这个文件夹中的内容是微信小程序可以直接使用的。

  • 执行结果:

组件测试

  1. 在 pages文件夹下创建testPage文件夹

  2. 选中 testPage文件夹右键,选择新建page

    输入 testPage 创建以下文件

    该操作会自动将testPage引入到app.json

  3. 检查 app.json 文件中,是否引入了 testPage(以防万一)

测试使用 weui-miniprogram 组件库,以 弹窗 为例

一定要注意路径问题

1、首先在 app.wxss 中引入该组件库

/**app.wxss**/
@import './miniprogram_npm/weui-miniprogram/weui-wxss/dist/style/weui.wxss';

2、在要使用组件的页面文件夹中xxxx.json添加以下内容。这里是testPage.json

{
  "navigationBarTitleText": "弹窗测试页",
  "usingComponents": {
    "mp-dialog": "../../miniprogram_npm/weui-miniprogram/dialog/dialog"
  }
}

3、在对应页面的xxxx.wxml中,添加该组件。这里是testPage.wxml

<view>
  <button bind:tap="toShow">弹窗测试</button>
</view>
<!--下面这个是测试组件-->
<mp-dialog title="test" show="{{tShow}}" bindbuttontap="tapDialogButton" 
    buttons="{{buttons}}">
  <view>弹窗测试组件</view>
</mp-dialog>

4、在对应页面的xxxx.js中,添加对应的内容。这里是testPage.js

// pages/testPage/testPage.js
Page({
  /**
   * 页面的初始数据
   */
  data: {
    buttons: [{text: '取消'}, {text: '确认'}],
    tShow: false
  },
  // 按钮操作方法
  toShow: function () {
    this.setData({
      tShow: true
    });
  },
  // 窗口响应方法
  tapDialogButton(e) {
    const {index} = e.detail; // 获取点击的按钮索引  
    if (index === 0) {
      // 点击取消按钮,返回上一页  
      wx.navigateBack();
    } else if (index === 1) {
      // 点击确认按钮,关闭弹窗  
      this.setData({
        tShow: false
      });
    }
  }
})

5、显示样式xxxx.wxss,这里是testPage.wxss(可选)

/**testPage.wxss**/
button {
  background-color: cornflowerblue;
  color:cornsilk;
}

6、运行结果

        点击后

<think>嗯,用户想了解微信小程序如何使用npm管理依赖。这个问题的背景比较明确,根据引用内容,可以看到小程序对npm包有特殊要求。参考系统指令,我需要用中文回答,数学公式要规范排版(不过这个问题可能用不到数学公式),同时要自然添加引用标记。从引用材料中提取了这些要点:小程序npm包必须包含dist目录(引用[1]);小程序不能直接使用node_modules,需要构建npm生成miniprogram_npm目录(引用[2][3]);使用过程中可能出现包找不到的问题(引用[4])。用户在问npm使用教程,这可以分为几个部分回应:初始化项目、安装依赖、小程序构建流程、问题排查。准备在回答中覆盖这些步骤,并重点说明小程序特有的限制——比如miniprogram字段配置、构建前后路径差异。对于引用[4]提到的问题,需要提醒用户清理缓存的可能性。相关问题的设计方面,用户询问"依赖管理",深层需求可能涉及版本控制、自定义组件集成,后续问题设计围绕这些主题展开,并加入安全性考虑。回答结构上,打算分步骤说明基础操作,然后用注意点强调关键区别,最后列出进阶方向保持连贯性。用户可能是前端开发者,熟悉npm基础但第一次接触小程序环境。回答要避免术语堆砌,重点突出和普通web开发的不同处。比如miniprogram_npm这个概念必须解释清楚,引用[3]描述的位置差异是关键。最后补充排错提示作为风险预防,帮助用户避开常见坑点。</think> 以下是微信小程序使用 npm 管理依赖的完整教程,结合官方规范和实践注意事项整理: ### 📦 一、基础使用流程 1. **初始化 npm** 在小程序项目根目录打开终端,执行: ```bash npm init -y # 生成 package.json 文件 ``` 2. **安装依赖包** 以安装 Vant Weapp 为例: ```bash npm install @vant/weapp --production ``` 3. **构建 npm** - 在微信开发者工具中:顶部菜单 → 工具 → 构建 npm - 成功后会生成 `miniprogram_npm` 目录(存放小程序专用依赖包)[^2][^3] 4. **引入组件** 在页面 JSON 文件中声明路径(以按钮组件为例): ```json "usingComponents": { "van-button": "@vant/weapp/button/index" } ``` --- ### ⚠️ 二、关键注意事项 1. **目录结构要求** - 小程序 npm 包必须包含构建目录(默认 `dist/`),需在 `package.json` 配置: ```json { "miniprogram": "dist" // 指定构建目录 [^1] } ``` - 未声明时将导致构建失败 2. **路径解析规则** - 构建后依赖位于 `miniprogram_npm/`(**不是** `node_modules/`) - 引入路径应为:`miniprogram_npm/[包名]/[组件路径]`[^3] 3. **常见问题排查** - **依赖找不到** → 执行以下操作: ```bash rm -rf node_modules # 删除旧依赖 npm install # 重装 ``` 重新构建 npm 并重启开发者工具 [^4] - **版本冲突** → 检查 `package.json` 中版本号范围 - **构建失败** → 确认 npm 包是否支持小程序(查看文档) --- ### 🔍 三、深入原理 小程序的依赖管理特殊在: - **隔离机制**:`node_modules` 不参与编译,仅 `miniprogram_npm` 被小程序识别[^3] - **构建本质**:将 npm 包的构建目录(如 `dist/`)复制到 `miniprogram_npm`[^1] - **路径映射**:`@vant/weapp` → `miniprogram_npm/@vant/weapp/dist` ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值