指定 gulp-注入脚本类型

Specify gulp-inject Script Type

我正在使用 JSX 和 React。是否可以指定注入脚本的类型,以便在开发模式下使用浏览器内 JSX 转换器?

<!-- inject:js -->
<script type="text/jsx" src="js/components/Component.js"></script>
<!-- endinject -->

gulp-inject 将 JSX 视为与 JavaScript 不同的类型。如果将文件后缀更改为 .jsx 并使用开始标记 inject:jsx 而不是 inject:js,则输出包含 type="text/jsx" 属性。

另一种选择(如果您需要保留 .js 后缀)是覆盖默认转换函数:

var inject = require('gulp-inject');

inject.transform.html.js = function (path) {
  return '<script type="text/jsx" src="'+path+'"></script>';
};