# @we-debug/gulp-tool
we-debug 全局组件注入插件。
## 简介
we-debug 组件需要在每个小程序页面引入,对于一些大型的小程序,动辄上百个页面,手工植入是令人崩溃的。
对此,我们提供了一个 gulp 插件来帮助你完成这些事情:
- `app.json` 中声明全局组件
- 解析所有的小程序页面,并在每个页面 wxml 文件中追加组件 wxml 代码
- `app.js` 注入 `we-debug` 初始化文件调用代码
## 安装
```
npm install @we-debug/gulp-tool gulp-mp-npm -D
```
> 由于 we-debug 组件为 NPM 组件包,这里需要搭配 `gulp-mp-npm` 插件。
## 使用
```javascript
const gulp = require('gulp')
const weDebug = require('@we-debug/gulp-tool')
const mpNpm = require('gulp-mp-npm')
gulp
.src('dist/**/*.*')
.pipe(
weDebug({
baseDir: 'dist'
})
)
.pipe(npm())
.pipe(gulp.dest('dist'))
```
## 配置项
参数 | 说明 | 类型 | 默认值 | 版本
-|-|-|-|-|
baseDir | 项目源码位置 | `string` | `src` | - |
wxml | we-debug wxml 模板 | `string` | `<we-debug />` | - |
filter | 页面过滤参数,可以是正则、字符串、函数或这三者组成的数组 | `reg` `string` `func` `array` | `''` | - |
compName | we-debug 全局组件名 | `string` | `we-debug` | - |
compPath | we-debug 全局组件位置,可填绝对路径/相对baseDir的路径 | `string` | `@we-debug/core/component/index/index` | - |
entryFile | we-debug 初始化文件位置,可填绝对路径/相对baseDir的路径 | `string` | `./we-debug/index.js` | - |
plugins | 插件配置 | `array<{ package: string, options: object }>` | `` | - |
## 插件
```@we-debug/gulp-tool``` 作为 ```we-debug``` 的一个编译增强型工具,可以帮助开发者在开发调试阶段提升效率,如果开发者希望在编译阶段做更多定制化操作,比如在 wxml 插入片段,给 json 新增字段等等,就需要用到插件能力了。
想要使用一个插件,你只需要 require() 它,然后把它添加到 plugins 数组中。多数插件可以通过选项(options)自定义。
**gulpfile.js**
```javascript
const gulp = require('gulp')
const weDebug = require('@we-debug/gulp-tool')
const wedebugGulpXXX = require('wedebug-gulp-xxx')
gulp
.src('dist/**/*.*')
.pipe(
weDebug({
baseDir: 'dist',
// 配置 we-debug gulp 第三方插件
plugins: [
{
package: wedebugGulpXXX,
options: { // 插件配置项,由第三方插件自由定义
// xxx
}
}
]
})
)
```
## 开发插件
we-debug gulp 插件需要暴露一个函数,并且在函数中进行插件注册
```typescript
interface IMeta {
baseDir: string;
entryFile?: string;
}
interface ITool {
meta: IMeta;
register: (options: IRegistration) => void
}
interface PluginOption {
[props: string]: any
}
type ProcessDefine = (file: File, encoding?: string) => File | void;
interface IRegistration {
// 插件名称
pluginName: string;
// tool 初始化前执行
beforeInit?: () => void;
// tool 初始化时执行
onInit?: () => void;
// 检测到项目 wxml 文件后立即执行
wxml?: ProcessDefine;
// 插入 we-debug 片段之前执行
beforeInsertWxml?: ProcessDefine;
// 插入 we-debug 片段前执行
afterInsertWxml?: ProcessDefine;
// 检测到项目 json 文件后立即执行
json?: ProcessDefine;
// 检测到项目 js 文件后立即执行
script?: ProcessDefine;
// app.js 插入 we-debug import 片段前执行
beforeInsertScript?: ProcessDefine;
// app.js 插入 we-debug import 片段后执行
afterInsertScript?: ProcessDefine;
}
export default function (tool: ITool, options: PluginOption = {}): void {
// 注册插件
tool.register({
// ...
})
}
```
没有合适的资源?快使用搜索试试~ 我知道了~
微信小程序调试工具.zip
共151个文件
ts:42个
md:23个
js:21个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 53 浏览量
2024-12-01
01:39:33
上传
评论
收藏 115KB ZIP 举报
温馨提示
微信小程序调试工具我们调试 一款灵活、易于拓展的小程序端调试工具功能网络请求抓包错误日志抓取路由信息获取UI对比...安装npm install @we-debug/miniprogram --save使用在 json 配置中添加 we-debug 组件声明{ "usingComponents": { "we-debug": "@we-debug/miniprogram/index/index" }}在页面 wxml 中创建 we-debug 组件<we-debug></we-debug>在 app.js 中初始化 we-debug 相关配置const weDebug = require('@we-debug/miniprogram')weDebug.init()在线体验插件列表自定义页面跳转相关链接文档 · Document开源协议 · The MIT License代码示例 · Example
资源推荐
资源详情
资源评论
收起资源包目录
微信小程序调试工具.zip (151个子文件)
.babelrc 100B
.babelrc 100B
.eslintignore 41B
.eslintrc 706B
.gitignore 80B
index.html 734B
logo.js 18KB
index.js 6KB
index.js 5KB
config.js 5KB
index.js 4KB
index.js 3KB
gulpfile.js 3KB
index.js 3KB
index.js 2KB
index.js 2KB
plugin.js 1KB
index.js 1KB
utils.js 870B
wx.js 856B
unittest.js 605B
bootstrap.js 586B
networkManage.js 460B
utils.js 378B
index.test.js 292B
index.js 175B
index.js 15B
package.json 2KB
tsconfig.json 1KB
package.json 939B
package.json 757B
package.json 677B
package.json 634B
package.json 525B
package.json 525B
package.json 516B
index.json 464B
package.json 433B
package.json 430B
package.json 427B
lerna.json 354B
index.json 90B
index.json 49B
index.json 49B
index.json 49B
index.json 49B
index.json 48B
index.less 4KB
ui-check.less 2KB
_variable.less 2KB
_variable.less 2KB
rule.less 2KB
badge.less 1KB
mask.less 789B
animate.less 717B
button.less 705B
cell-item.less 633B
cell.less 73B
index.less 34B
index.less 32B
index.less 30B
index.less 30B
index.less 29B
index.less 29B
index.less 29B
LICENSE 1KB
CHANGELOG.md 32KB
CHANGELOG.md 19KB
CHANGELOG.md 14KB
CHANGELOG.md 8KB
CHANGELOG.md 8KB
CHANGELOG.md 7KB
CHANGELOG.md 7KB
CHANGELOG.md 7KB
CHANGELOG.md 7KB
CHANGELOG.md 7KB
CHANGELOG.md 6KB
learn.md 5KB
api.md 5KB
README.md 4KB
README.md 2KB
README.md 1KB
README.md 943B
README.md 927B
README.md 803B
README.md 705B
README.md 552B
README.md 498B
_navbar.md 59B
.nojekyll 0B
.npmignore 94B
.npmignore 94B
.npmignore 94B
.npmignore 94B
.npmignore 94B
.npmignore 94B
.npmignore 94B
.npmignore 94B
index.ts 5KB
types.ts 3KB
共 151 条
- 1
- 2
资源评论
赵闪闪168
- 粉丝: 1624
- 资源: 4239
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功