npm 包 gulp-jst-extend2 使用教程

简介

gulp-jst-extend2 是一款 gulp 插件,用于将 Underscore / Lodash / Handlebars 等模板语言编译成可供浏览器使用的 JavaScript 代码。

与原生的 gulp-jst-extend 不同,gulp-jst-extend2 支持多套模板语言的编译,且支持编译 Cache。使用起来非常方便:

----- ---- - ----------------
----- ---- - ----------------------------

---------------- ---------- -
  ------ ----------------------------
    ------------
      -- --------
      --------- -
        ------------- -------------
        ------------- ---------------------
      --
      -- ---- -----
      ------ ----
    ---
    ----------------------------
---

本篇文章将详细讲解如何使用 gulp-jst-extend2 插件。

安装

首先需要安装 gulp-jst-extend2:

--- ------- ---------------- ----------

使用

gulp-jst-extend2 主要有两个参数:selectorcache

selector

selector 指定模板语言及其编译函数。其中,键名为模板语言,值为模板语言对应的编译函数。

如:

--------- -
  ------------- -------------
  ------------- ---------------------
-

上述代码表示编译器将解析文件中 <script type="text/template" data-template /> 标签内的内容,将内容用 _.template 函数编译成 JavaScript 代码,如果该 HTML 文件中还有 <script type="text/template" data-template-lodash /> 标签内的内容,则使用 _.template 函数编译成 JavaScript 代码。同时,selector 还支持读取多套模板语言。可以使用以下语法:

--------- -
  ------------- -------------
  --------- -
    ---------- -------------
    ----------- ------
  --
  ------------- -
    ---------- ---------------------
    ----------- ------
  -
-

上述代码表示编译器将解析文件中 <script type="text/template" data-template /> 标签内的内容,将内容用 _.template 函数编译成 JavaScript 代码;将解析文件中 <script type="text/template-lodash" data-template-lodash /> 标签内的内容,将内容用 _.template 函数编译成 JavaScript 代码;将解析文件中 <script type="text/template-handlebars" data-template-handlebars /> 标签内的内容,将内容用 Handlebars.compile 函数编译成 JavaScript 代码。

cache

cache 开启编译缓存。

如:

------ ----

上述代码表示编译器开启缓存,加快编译速度。

示例

以 Underscore 为例,假设我们有以下代码:

------
  ------
    -----------------
  -------
  ------
    ------- -------------------- --------------
      ------- ----- -------
      ----
        -- --------------- -------------- - --
          ------- --------- -------
        -- --- --
      -----
    ---------
  -------
-------

运行 gulp:

----- ---- - ----------------
----- ---- - ----------------------------

---------------- ---------- -
  ------ ----------------------------
    ------------
      --------- -
        ------------- ------------
      --
      ------ ----
    ---
    ----------------------------
---

结果会在 dist/js 目录下生成 home.js 文件,文件内容如下:

----------- - ----------- -- ---

------------------- - --------------

--- -----------------------------------------------------------------------------------

------------
----------------------
--------------  --
 ------------------- -------------- - -
--------    ------
----------------------
--------  --
 --- -
---------------

------ ----
--

总结

gulp-jst-extend2 是一款非常实用的 gulp 插件,使用它能快速地将多套模板语言编译成 JavaScript 代码供浏览器使用。我们也可以根据自己的需要定制化 selectorcache 参数来达到不同的需求。

当然,本篇文章只是简单地介绍了 gulp-jst-extend2 的使用,要真正熟练掌握这个插件还需要多加实践和积累。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/600572fe81e8991b448e925d


猜你喜欢

  • npm 包 hubot-meetbot 使用教程

    前言 在现代化企业中,团队内部沟通以及协作是至关重要的。所以,现在有很多的工具可以用来帮助团队更好的进行沟通和协作。其中, Hubot 是一款非常流行的聊天机器人,它可以根据用户的需求进行查找、提供数...

    3 年前
  • npm 包 dbj.cond.comparators 使用教程

    前言 在进行前端开发的过程中,我们经常会需要对数据进行比较。而这一过程往往会涉及到冗余的代码和复杂的判断逻辑,使代码难以维护和扩展。为了解决这一问题,npm 社区中出现了许多优秀的包,而 dbj.co...

    3 年前
  • npm 包 zipfile-diff 使用教程

    在完成前端项目开发后,我们经常需要将项目打成 zip 包交付给客户或者发布到线上。但是,在开发的过程中,由于需求的频繁变化以及开发人员的变动等因素,可能导致多个版本之间的文件差异非常大,而手动比对这些...

    3 年前
  • npm 包 flexee 使用教程

    简介 flexee 是一款 npm 包,封装了 flex 布局相关的 CSS 属性及其浏览器前缀,可以帮助开发者更方便地使用 flex 布局。 使用方法 安装 flexee: --- -------...

    3 年前
  • npm 包 gulp-webpack-tasks-ootb 使用教程

    简介 gulp-webpack-tasks-ootb 是一款 npm 包,它可以帮助前端开发人员更轻松地完成 Webpack 与 Gulp 之间的集成。通过使用该包,你可以很容易地配置开发环境和生产环...

    3 年前
  • npm 包 kratos-iview 使用教程

    前言 在现代前端开发中,使用 npm 包已经成为了标配之一。npm 是 Node.js 开发的包管理工具,可以方便地管理和安装各种依赖,同时也是开发开源项目的主要途径之一。

    3 年前
  • npm 包 deprecated-spdx-license-ids 使用教程

    在前端开发过程中,我们经常需要使用到 npm 包来帮助我们完成一些任务。其中,deprecated-spdx-license-ids 是一个非常有用的包,它可以帮助我们判断一个开源许可证是否被废弃。

    3 年前
  • npm 包 react-native-offscreen-toolbar 使用教程

    简介 React Native 是一款非常流行的跨平台手机应用开发框架。而 react-native-offscreen-toolbar 则是基于 React Native 开发的一款针对手机端工具栏...

    3 年前
  • npm 包 sgui 使用教程

    前言 sgui 是一个前端 UI 组件库,基于 Vue.js 框架,旨在帮助前端开发者快速构建美观、易用的 Web 应用程序。本教程将会介绍 sgui 的使用方法,从安装到实际应用中的使用。

    3 年前
  • npm 包 babel-plugin-import-glob-fix 使用教程

    babel-plugin-import-glob-fix 是一个能够帮助前端开发者在项目开发过程中更加便捷地使用 glob 模式的导入语句的 npm 包。本文将为大家详细介绍这个 npm 包的使用方法...

    3 年前
  • NPM包reddit-uhd使用教程

    1. 什么是reddit-uhd? reddit-uhd是一个NPM包,可以帮助前端开发者爬取Reddit社交媒体平台上的高清图片。该包使用Node.js编写,可以通过命令行界面进行使用。

    3 年前
  • npm 包 font-friends-fu 使用教程

    在前端领域,我们常常需要在项目中引入字体。字体的引入是非常重要的,因为它不仅可以提升网站的视觉效果,还可以增加用户的阅读体验和品牌识别度。而在实际的开发过程中,我们往往会遇到一些问题,比如字体文件过大...

    3 年前
  • npm 包 observable-calls 使用教程

    随着前端开发的不断发展,许多新的技术和工具不断涌现,这些工具有助于我们提高接口请求的效率和可靠性。其中一个非常有用的工具就是 npm 包 observable-calls,它可以用于跟踪和处理异步方法...

    3 年前
  • npm 包 vtex-api-sauce 使用教程

    在前端开发中,我们经常需要和后端通过 API 接口进行交互,这时候,我们就需要使用一些工具来帮助我们完成这个过程。vtex-api-sauce 就是这样一款非常好用的工具,它提供了一种简单的方式来让我...

    3 年前
  • npm 包 babel-preset-react-native-web3 使用教程

    当使用 React Native 开发时,我们可能还需要在项目中加入 web3.js 来与以太坊区块链交互。然而,由于 React Native 和 web3.js 都使用了 ECMAScript 的...

    3 年前
  • NPM 包 @dcueto/platzom 使用教程

    1. 前言 在前端开发中,我们经常需要处理字符串,包括对字符串进行处理和转换。在 JavaScript 中虽然提供了很多字符串操作方法,但有时候仍然不能满足我们的需求。

    3 年前
  • npm 包 @adt/message-tracker 使用教程

    Message-tracker 是一款非常好用的消息追踪和管理工具,可以帮助前端开发人员更好地管理和追踪应用程序中的消息。@adt/message-tracker 是 Message-tracker ...

    3 年前
  • npm 包 angular-barricade 使用教程

    简介 angular-barricade 是一款基于 Angular 的工具包,提供了一系列的指令和组件,方便前端开发人员对于表单的处理和验证,避免了一些重复或者较为繁琐的工作。

    3 年前
  • npm 包 homebridge-platform-deconz 使用教程

    简介 homebridge-platform-deconz 是一个基于 npm 的开源软件包,旨在帮助前端开发者更方便地集成 deCONZ 网关到 HomeKit 平台中。

    3 年前
  • npm 包 ibm-shopping-list-model 使用教程

    介绍 ibm-shopping-list-model 是一个由 IBM 开发的用于构建购物清单应用程序的 Node.js 模型包。它采用了现代化的数据模型,提供了诸如添加、删除、修改和查询购物清单中的...

    3 年前

相关推荐

    暂无文章