Heim  >  Artikel  >  WeChat-Applet  >  Ausführliche Erläuterung der Verwendung von taro-deploy zum automatischen Erstellen und Freigeben eines Taro-Applets

Ausführliche Erläuterung der Verwendung von taro-deploy zum automatischen Erstellen und Freigeben eines Taro-Applets

coldplay.xixi
coldplay.xixinach vorne
2020-09-16 16:44:503438Durchsuche

Ausführliche Erläuterung der Verwendung von taro-deploy zum automatischen Erstellen und Freigeben eines Taro-Applets

Verwandte Lernempfehlungen: WeChat-Miniprogramm-Tutorial

Wenn Sie Taro zum Entwickeln von Miniprogrammprojekten verwenden, wird empfohlen, Taro-Deploy zu verwenden, um die automatisierte Erstellung und Freigabe mit einem Klick effizient durchzuführen.

Warum Taro-Deploy verwenden?

Entwickler von Taro-Miniprogrammen haben oft diesen Schmerzpunkt: Nachdem Sie den Code entwickelt und zum Testen veröffentlicht haben, müssen Sie die folgenden Schritte ausführen (nehmen Sie die Miniprogrammplattformen Alipay und WeChat als Beispiele):

Ausführliche Erläuterung der Verwendung von taro-deploy zum automatischen Erstellen und Freigeben eines Taro-Applets

Der gesamte Vorgang dauert fast zehn Minuten und es gibt immer noch viele Schritte, die manuelle Vorgänge erfordern. Man kann sagen, dass diese ursprüngliche Veröffentlichungsmethode sehr ineffizient ist.

taro-deploy wurde entwickelt, um dieses Problem zu lösen. Es integriert die von Alipay und WeChat bereitgestellten Befehlszeilentools, um den oben genannten Prozess automatisch abzuschließen.

Mit taro-deploy benötigen Entwickler beim Veröffentlichen und Testen nur zwei Schritte:

  1. Führen Sie den Befehl taro-deploy einmal aus.
  2. Gehen Sie eine Tasse Tee und machen Sie eine Pause.

Nachdem der Build und die Veröffentlichung abgeschlossen sind , es wird auf DingTalk gesammelt. Wenn es darum geht, die Build-Ergebnisse zu pushen, ist während des gesamten Prozesses kein manueller Eingriff erforderlich.

Das Folgende ist ein Screenshot der Push-Nachricht auf DingTalk.

Ausführliche Erläuterung der Verwendung von taro-deploy zum automatischen Erstellen und Freigeben eines Taro-Applets

Sie können sehen, dass die Push-Nachricht zusätzlich zum QR-Code des durch die Veröffentlichung generierten Miniprogramms auch die Build-Maschine, den Build-Zweig, das aktuelle Git-Commit-Protokoll des Projekts usw. enthält. um die Verpackungsinformationen klarer zu gestalten.

HINWEIS: Das Git-Commit-Protokoll zeigt derzeit nur Commits an, die mit den Schlüsselwörtern feat und fix beginnen.featfix 关键词开头的 commit

适合我用吗?

如果你

  1. 使用 Taro 框架开发小程序
  2. 需要支持微信和支付宝平台
  3. 想要自动化构建发布,不想手动操作
  4. 使用钉钉办公,开发和测试都在一个钉钉群里(这点不是必需的,没有钉钉也可以使用 taro-deploy,只是会多了一些手动操作)

那你就非常适合使用 taro-deploy 了。

怎么用?

Step 1 - 安装

npm i -g taro-deploy复制代码

Step 2 - 平台相关的准备步骤

  1. 支付宝:参考官方文档,准备好私钥和 toolId。
  2. 微信:参考官方文档,准备好私钥

Step 3 - 创建钉钉机器人

参考官方文档创建钉钉机器人,安全设置记得选择“自定义关键词”并填上“小程序构建”即可。

创建完成后,会得到一个形如 https://oapi.dingtalk.com/robot/send?access_token=XXXXXX

Ist es geeignet für? mich zu benutzen?

Wenn Sie

das Taro-Framework verwenden, um kleine Programme zu entwickeln

WeChat- und Alipay-Plattformen unterstützen müssen

die Erstellung und Veröffentlichung automatisieren möchten, dies nicht manuell tun möchten

DingTalk Office, Entwicklung und Tests verwenden sind alle in einer DingTalk-Gruppe (Dies ist nicht erforderlich. Sie können taro-deploy auch ohne DingTalk verwenden, es sind jedoch einige weitere manuelle Vorgänge erforderlich)

Dann sind Sie sehr gut für die Verwendung von taro-deploy geeignet.

Wie verwende ich?

Schritt 1 – Installation
// deploy-config.js// 该文件应放在 Taro 项目的根目录下module.exports = {  // 构建结果的输出目录,该脚本产生的日志也会输出到这里
  outDir: './deploy-out',  // 微信相关配置
  weapp: {    // 如果为 false,则不会运行微信的构建流程
    enable: true,    // 这里填你们配置的 Taro 编译后微信程序包的输出路径
    projectPath: './dist/weapp',    // Step 2 里获得的私钥文件的存放路径
    keyPath: './weapp.key',    // 微信小程序 appId
    appId: 'wx82xxxxxx',    // 微信体验版图片地址
    // 与支付宝不同,不管上传多少个新版本,微信的体验版地址是一直不变的
    // 因此需要在这里配置该二维码图片的链接
    // 直接从微信公众平台上复制的体验版图片地址貌似无法在钉钉里正常展示
    // 建议转存到自己的 CDN 上,再将 cdn url 填到下面这里来
    qrcodeImageUrl: 'https://xxxcdn.con/image/weapp-exp-qrcode.jpg',    // 小程序版本号
    // 由于微信的命令行 sdk 不支持设置某个版本为体验版,要改设体验版需要在网页上手动操作
    // 所以只能曲线救国,先在网页上将本工具上传的版本设为体验版(找到 ci机器人1 上传的那个版本)
    // 然后每次上传都指定同一个版本号,以覆盖旧的版本,最终实现发布新体验版的效果
    version: '1.1.0',    // true 则将跳过编译阶段,即 taro build 命令,
    skipBuild: false,
  },  // 支付宝相关配置
  alipay: {    // 如果为 false,则不会运行支付宝的构建流程
    enable: true,    // 这里填你们配置的 Taro 编译后支付宝程序包的输出路径
    projectPath: './dist/alipay',    // Step 2 里获得的私钥文件的存放路径
    keyPath: './alipay.key',    // Step 2 里获得的 toolId
    toolId: 'f48xxx',    // 支付宝小程序 appId
    appId: '202xxx',    // true 则将跳过 taro build 命令,即编译阶段
    skipBuild: false,
  },  // 默认发体验版,填 false 则发布为预览版
  // 注意如果发布为预览版,需要实现 uploadImage 的函数,否则钉钉无法展示预览版的二维码
  isExperience: true,  // 是否在构建前运行 npm install
  npmInstall: false,  // 指定环境变量,会在编译阶段,即 taro build 的指令中注入指定的环境变量
  env: {    BUILD_ENV: 'test' // 仅作 demo,实际应填入你项目编译需要用的环境变量
  },  // Step 3 中获取的钉钉机器人 webhook url
  dingTalkUrl: 'https://oapi.dingtalk.com/robot/send?access_token=xxx',  // 如果你只需要构建发布体验版小程序,则可忽略以下函数
  // 如果你需要构建发布预览版小程序,则需要实现该函数,将本地二维码图片文件转换为图片链接,否则无法将预览版二维码推送到钉钉群里
  // 其中 objectName 形如 {platform}-{timestamp}.jpg,作为建议保存的文件名
  // filePath 为本地预览版二维码图片的路径
  uploadImage: async function(objectName, filePath) {    return ''
    // 如果你使用阿里云 oss 作 cdn,可以参考以下代码进行上传
    // const OSS = require('ali-oss')
    // const client = new OSS({
    //   region: 'oss-cn-xxx',
    //   accessKeyId: 'xxx',
    //   accessKeySecret: 'xxx',
    //   bucket: 'xxx',
    // })
    // await client.put(`preview/${objectName}`, filePath, {
    //   'Cache-Control': 'max-age=31536000'
    // })
    // return `https://xxx-oss-cdn.com/preview/${objectName}`
  }
}复制代码

Schritt 2 – Plattformbezogene Vorbereitungsschritte

Alipay: siehe offizielle Dokumentation und Seien Sie bereit, privater Schlüssel und Tool-ID.

WeChat: Sehen Sie sich die offizielle Dokumentation an und bereiten Sie den privaten Schlüssel vor

Schritt 3 – Erstellen Sie einen DingTalk-Roboter

Beziehen Sie sich auf die offizielle Dokumentation, um einen DingTalk-Roboter zu erstellen Wählen Sie „Anpassen“ für Sicherheitseinstellungen „Schlüsselwörter“ und füllen Sie „Miniprogrammerstellung“ aus.

Nachdem die Erstellung abgeschlossen ist, erhalten Sie eine Webhook-URL in der Form https://oapi.dingtalk.com/robot/send?access_token=XXXXXX, die später verwendet wird.

Schritt 4 – Vorbereiten der Konfigurationsdatei

Erstellen Sie eine Datei „deploy-config.js“ im Stammverzeichnis Ihres Taro-Projekts und füllen Sie den Inhalt gemäß der folgenden Vorlage aus.

Der Inhalt, der hier konfiguriert werden muss, ist kritischer und mehr, Erfolg oder Misserfolg hängen auf einen Schlag davon ab

# cd 到你们的项目并运行taro-deploy复制代码

Schritt 5 – taro-deploy ausführen

rrreee🎜Dann können Sie warten, bis der DingTalk-Roboter den Push durchführt Build-Ergebnisse🎜🎜FAQ🎜🎜F: Wir verwenden DingTalk Office nicht. Wie können wir Taro-Deploy verwenden? 🎜🎜A: taro-deploy unterstützt derzeit nur das Pushen von DingTalk-Nachrichten. Andernfalls kann die Testversion nur automatisiert erstellt, hochgeladen und eingerichtet werden, der letzte Push-Schritt kann jedoch nicht abgeschlossen werden. Wenn Sie den Bedarf haben, andere IM-Tools voranzutreiben, können Sie versuchen, dies selbst zu implementieren, und Sie können auch gerne PR einreichen. 🎜🎜F: Warum ist es so mühsam, die Funktion „uploadImage“ zu implementieren, wenn eine Vorschauversion veröffentlicht wird? 🎜🎜A: Da die Vorschauversionen von Alipay und WeChat nur lokale QR-Code-Bilder generieren, können Sie, wenn Sie lokale QR-Code-Bilder in DingTalk-Nachrichten anzeigen möchten, das Bild nur zuerst in CDN hochladen und dann den CDN-Link ausfüllen . Geben Sie die DingTalk-Nachrichtenvorlage ein. 🎜🎜F: Warum ist die WeChat-Testversion nach ihrer Veröffentlichung noch alt? 🎜🎜A: Bitte gehen Sie zur WeChat-Webkonsole, um sicherzustellen, dass die von „ci Robot 1“ hochgeladene Version als Testversion festgelegt wurde. 🎜🎜F: Unterstützt es nur WeChat und Alipay? 🎜🎜A: Taro unterstützt viele Plattformen, aber taro-deploy unterstützt derzeit nur die automatische Erstellung und Veröffentlichung von WeChat und Alipay. 🎜🎜F: Die von ci robot 1 hochgeladene Version wurde nicht gefunden? 🎜🎜A: Führen Sie zuerst taro-deploy aus. Nachdem der Upload abgeschlossen ist, finden Sie ihn im Menü „Versionskontrolle“ auf der WeChat-Applet-Konsolen-Webseite. 🎜🎜F: Wenn in diesem Tool ein Fehler auftritt, führt dieser dann zu einer Online-Fehlfunktion des Miniprogramms? 🎜🎜A: taro-deploy unterstützt derzeit nur die Veröffentlichung von Vorschau- und Testversionen. Die Veröffentlichung von Produktionsversionen wird nicht unterstützt und hat keine Auswirkungen auf die Produktionsumgebung. 🎜

F: Ich möchte den Inhalt von DingTalk-Push-Nachrichten anpassen

A: Derzeit gibt es keine flexible DingTalk-Nachrichtenvorlagenkonfiguration. Bei Bedarf können Sie dieses Projekt teilen und die send-ding.js-Datei anpassen PRs einreichen.


Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Verwendung von taro-deploy zum automatischen Erstellen und Freigeben eines Taro-Applets. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:juejin.im. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen