问题标签 [gulp-preprocess]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
785 浏览

javascript - 了解 Gulp 管道顺序

语境

我想解析一些.sass文件并在将它们编译成.css.

为此,我使用了gulpgulp-sassgulp-preprocess

Gulpfile.js

萨斯/styles.sass

sass/partials/_variables.sass

命令行界面

这行得通。它会dist/styles.css按预期创建一个包含替换变量的文件。

问题:

在第一次尝试时,我试图执行preprocess之前sass

根本不会替换变量:

那么,为什么preprocess必须在 之后执行sass?sass转换后的管道不会返回已经编译的css吗?这意味着变量已经被应用并被压缩到流中......

看起来在某些时候流向另一个方向。

0 投票
1 回答
444 浏览

windows - gulp-preprocess and environment variables on Windows 10

I am building a js app on OSX, and Windows 10, both running Node.js v4.2.x.

As part of my build process I run

Which builds a particular configuration of my app, using gulp-preprocess.

The relevant part of my gulp file looks like

The relevant part of my HTML looks like

On OSX this works great, running BUILD_TYPE=dev gulp build results in:

However, on Windows 10, using Node.js command prompt,

results in:

With no script tags appearing! It's clearly recognised the environment variable, as it's printed by @echo BUILD_TYPE. However, none of the script elements are present.

Any clues as to why this might be happening would be much appreciated!

Oddly, if I change my gulpfile to:

I get the expected output:

Further still, if I log the variable before invoking preprocess:

OSX

Windows 10

0 投票
1 回答
272 浏览

javascript - 如何在angularjs中访问预处理

我正在使用 gulp 开发 Web 应用程序 Angularjs。

使用 gulp 我创建了一个环境变量,如下所示

这是我的 gulp 输出

但是我无法在我的角度代码中访问这个环境变量。我不知道需要包含任何插件是不是?

这是我用于访问环境变量的 js 代码

如何访问 gulp 创建的环境变量。

请帮我。

0 投票
1 回答
81 浏览

javascript - gulp 预处理是否支持 else 分支

所以gulp-preprocess允许在 gulp 编译期间定义变量依赖的源代码,语法如下(例如 HTML)

<!-- @if NODE_ENV='production' --> <script src="some/production/lib/like/analytics.js"></script> <!-- @endif -->

但是还有一种方法可以指定一个else分支吗?

简单地使用<!-- @else -->是行不通的。

0 投票
1 回答
137 浏览

gulp - gulp-preprocess 在 javascript 文件上没有按预期工作

我正在 gulp 中运行一个非常简单的预处理任务,但它没有按预期工作。

这是任务:

输入文件

出来不变。我预计这部分“应该消失”会被移除。

gulp-preprocess文档有这个例子:

任何想法我做错了什么?

package.json