- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
来自through2文档:
Do you need this?
Since Node.js introduced Simplified Stream Construction, many uses ofthrough2 have become redundant. Consider whether you really need touse through2 or just want to use the 'readable-stream' package, or thecore 'stream' package (which is derived from 'readable-stream').
如果我理解正确,现在(从 2021 年开始)我们可以在没有第三方库的情况下干预流。我没有在 Stream documentation 中找到如何做与 through2
相同的事情| .
// ...
.pipe(through2(function (file, encoding, callback) {
// Do something with file ...
callback(null, file)
}))
// ↑ Possible to reach the same effect natively (with core packages)?
我想,到 2021 年,一定会有一些方法支持 async/await 语法:
// ...
.pipe(newFeatureOfModernNodeJS(async function (file) {
await doSomethingAsyncWithFile(file);
// on fail - same effect as "callback(new Error('...'))" of trough2
return file; // same effect as "callback(null, file)" of trough2
// or
return null; // same effect as `callback()` of trough2
}))
// ↑ Possible to reach the same effect natively (with core packages)?
最佳答案
您正在寻找的可能是转换流,它是由 Node.js 中包含的 native “流”库实现的。我不知道还有异步兼容版本,但肯定有基于回调的版本。您需要继承原生的 Transform 流并实现您的功能。
这是我喜欢使用的样板:
const Transform = require('stream').Transform;
const util = require('util');
function TransformStream(transformFunction) {
// Set the objectMode flag here if you're planning to iterate through a set of objects rather than bytes
Transform.call(this, { objectMode: true });
this.transformFunction = transformFunction;
}
util.inherits(TransformStream, Transform);
TransformStream.prototype._transform = function(obj, enc, done) {
return this.transformFunction(this, obj, done);
};
module.exports = TransformStream;
现在你可以在你想用的地方使用它:
const TransformStream = require('path/to/myTransformStream.js');
//...
.pipe(new TransformStream((function (file, encoding, callback) {
// Do something with file ...
callback(null, file)
}))
关于node.js - Node : Actual native substitute for "through2" for intervention to steams in 2021,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66007171/
前言 Intervention/image 是为 Laravel 定制的图片处理工具, 它提供了一套易于表达的方式来创建、编辑图片。 Demo 代码请见: Github:https://git
在我的 Laravel 网络应用程序中,我使用了 Intervention Image library .我正在保存上传图片的三个版本:'original' , '500_auto'和自定义大小的图像
我正在上传 iPhone 图像 - 由 iPhone 相机垂直拍摄 - 尺寸为 2448x3264并且因为当我创建 600x360 的拇指时,这个尺寸太高了(?)它会自动旋转到水平。 我尝试了什么没有
我目前正在使用 Laravel 5 并利用干预图像集成:http://image.intervention.io/ 我正在动态地使用它,所以图像有这样的 URL: http://example.org
我刚刚按照此处的说明安装了干预图像类:http://image.intervention.io/getting_started/installation 我还将这两行添加到 config/app.ph
无法将图像数据写入路径(Laravel) 我无法将任何内容保存到Laravel项目的存储目录中,并收到以下错误: 最近三周,我一直在努力找出为什么我无法在没有运气的情况下将图像保存到Storage的L
我正在寻找一个错误,一个解决方案说要做:“文件>使缓存无效并重新启动” 但后来我发现我的 build.gradle 被未知数据替换。 后来我又用“以前的”数据替换了它。再次执行相同的“文件 > 使缓存
首先,如果我的问题可能过于模糊,我很抱歉。所以,我会尽量澄清我的问题。 我目前正在开发 Laravel 应用程序,我正在尝试使用 Intervention Image Facade。当我尝试使用它来测
我收到此错误消息: Call to undefined function Intervention\\Image\\Gd\\imagecreatefromjpeg() 这是我的 php 信息: htt
我正在尝试找出一种方法来清除使用 Intervention/ImageCache 的操作模板创建的图像的所有操作的缓存(将来可能还会使用缓存功能)。 我有一些在图像上运行自定义过滤器的操作模板: 't
我正在尝试找出一种方法来清除使用 Intervention/ImageCache 的操作模板创建的图像的所有操作的缓存(将来可能还会使用缓存功能)。 我有一些在图像上运行自定义过滤器的操作模板: 't
假设我有一个最喜欢的正方形尺寸,在本例中它的宽度和高度为 2236 px。 我需要使用 php intervention package 在我的服务器上保存我的图像。 用户的图像大小是多少并不重要,关
我在 Laravel 5.6 中使用 Intervention 包,每当我上传文件时都会遇到这个问题,我收到错误编码格式 (tmp) 不受支持。我也启用了 gdd2 扩展。这是我使用过的代码。 pub
我正在使用 Laravel 4。当一切似乎都正确时,我不确定为什么会出现此错误。此外,该产品不会更新到数据库。 Error: Intervention \ Image \ Exception \ Im
我想学习使用 MS Release Management 创建发布模板的最佳实践。 下面屏幕中红色标记的控制流工具有什么用? 最佳答案 据我所知,“序列”毫无用处。 “平行”是一个容器。您可以将多个服
我使用干预/图像从 Laravel 4.2 升级到 Laraveld5.3:“^2.3”, if (Input::hasFile('logo')) { $path = public_
当我在本地主机中使用 Laravel Intervention 图像时,它工作得很好,但是当我在我的控制面板中上传实时服务器时,它就无法工作了...... 最佳答案 在配置/app.php 在 $pr
我正在尝试将干预图像集成到我的项目中。我遵循了该指南,使用了很多其他教程,无论我做什么,我总是遇到同样的错误: Class 'Intervention\Image\ImageServiceProvid
我尝试在 docker(version: '3.1', ) 下安装我的 laravel 5.7.19 应用程序并运行一些页面,但出现错误: Call to undefined function Int
当我在本地主机中使用 Laravel Intervention 图像时,它工作得很好,但是当我在我的控制面板中上传实时服务器时,它就无法工作了...... 最佳答案 在配置/app.php 在 $pr
我是一名优秀的程序员,十分优秀!