Pemalam tersuai (lanjutan)


Pertama sekali, kami harus menjelaskan dengan jelas bahawa sebagai program umum, tidak seharusnya terdapat terlalu banyak keperluan penyesuaian peribadi dalam teras jika anda ingin menyenaraikan semua program dalam direktori akar selepas gulp dev< /code> Fungsi html mahu muncul tetingkap penyemak imbas secara langsung selepas gulp ftp berjaya dimuat naik Si percaya bahawa ia terlalu mengganggu dan tidak boleh digunakan sebagai fungsi bersepadu dalam aliran kerja umum , kami menyediakan fungsi < code>Plug-in. gulp dev 后列出根目录下所有的 html 功能,想在 gulp ftp 上传成功后直接弹出浏览器窗口,斯认为,侵入性过强,不应作为一个通用工作流的集成的功能,所以,我们提供了 插件 功能。

tmt-workflow 不仅提供了多个常用任务,还开放了各个常用任务的回调接口,您只需按 node 的方式编写插件,即可自行根据具体需求设计自己想要的功能,使得用户不需要通读 tmt-workflow 源码,就可以扩展自己想要的任务,既降低了学习成本,也降低了工作流的耦合度。

下面,我们以一个简单的示例说明如何使用 自定义插件 功能。

1. 配置 .tmtworkflowrc

   //插件功能
   //路径相对于 tasks/plugins 目录
  "plugins": {
    "build_devAfter": ["TmTIndex"],  //build_dev 任务执行后自动执行
    "build_distAfter": [],           //build_dist 任务执行后自动执行
    "ftpAfter": ["ftp"]              //ftp 任务执行后自动执行
  },

如上,每个字段属性对应各个任务,以数组形式指定插件,依次执行数组指定的插件,如我们给我们的插件命名为 TmTIndex

2. 在 _tasks/plugins/

tmt-workflow bukan sahaja menyediakan berbilang tugas biasa, tetapi juga membuka antara muka panggil balik untuk setiap tugas biasa Anda hanya perlu menulis pemalam mengikut kaedah nod dan anda boleh mereka bentuk apa yang anda mahu mengikut keperluan khusus Fungsi ini membolehkan pengguna mengembangkan tugas yang mereka inginkan tanpa membaca kod sumber tmt-workflow, yang bukan sahaja mengurangkan kos pembelajaran, tetapi juga mengurangkan tahap gandingan aliran kerja. .
Di bawah, kami menggunakan contoh mudah untuk menggambarkan cara menggunakan fungsi pemalam tersuai.

1 Konfigurasikan .tmtworkflowrc

var rd = require('rd');
var fs = require('fs');
var path = require('path');

//插件必需按 node 模块规范编写
module.exports = function (config) {
    // do some stuff ...
}

seperti di atas, setiap atribut medan sepadan dengan setiap tugas, nyatakan pemalam dalam bentuk tatasusunan dan laksanakan pemalam yang dinyatakan dalam tatasusunan dalam urutan Sebagai contoh, kami menamakan pemalam kami TmTIindex.

2 Buat TmTIndex.js baharu dalam direktori _tasks/plugins/

rrreee
Seperti di atas, pemalam hanya perlu ditulis mengikut spesifikasi modul nod untuk mencapai fungsi yang anda mahukan.
Seperti yang anda lihat, memanjangkan pemalam hanya memerlukan dua langkah Fungsi khusus yang anda ingin capai boleh disesuaikan mengikut keperluan khusus.
Kami telah mengembangkan pelbagai keperluan penyesuaian secara dalaman melalui fungsi pemalam Jika anda tidak faham apa-apa, anda boleh mengeluarkannya pada bila-bila masa. 🎜🎜🎜🎜🎜🎜🎜🎜🎜