gpt4 book ai didi

javascript - 浏览包含 Node 模块的文件,其中没有 .js 类

转载 作者:搜寻专家 更新时间:2023-11-01 00:40:06 27 4
gpt4 key购买 nike

我正在尝试浏览我的模块。我对此有依赖 https://www.npmjs.com/package/chilkat_win32它在我的 node_modules 文件夹中,这就是它的结构。

enter image description here

如你所见,没有js类。但是有一个 .node 文件。当我在我的模块上运行 browserify 时,出现以下错误。

SyntaxError: Unexpected character '�' (2:2) while parsing G:\Projects\Kube 2.0\edge-node-sdk-typescript\edge-node-sdk-js\node_modules\chilkat_win32\chilkat.node while parsing file: G:\Projects\Kube 2.0\edge-node-sdk-typescript\edge-node-sdk-js\node_modules\chilkat_win32\chilkat.node
at DestroyableTransform.end [as _flush] (C:\Users\macilamanym\AppData\Roaming\npm\node_modules\browserify\node_modules\insert-module-globals\index.js:96:21)
at DestroyableTransform.<anonymous> (C:\Users\macilamanym\AppData\Roaming\npm\node_modules\browserify\node_modules\through2\node_modules\readable-stream\lib\_stream_transform.js:115:49)
at DestroyableTransform.g (events.js:260:16)
at emitNone (events.js:67:13)
at DestroyableTransform.emit (events.js:166:7)
at prefinish (C:\Users\macilamanym\AppData\Roaming\npm\node_modules\browserify\node_modules\through2\node_modules\readable-stream\lib\_stream_writable.js:465:12)
at finishMaybe (C:\Users\macilamanym\AppData\Roaming\npm\node_modules\browserify\node_modules\through2\node_modules\readable-stream\lib\_stream_writable.js:473:7)
at endWritable (C:\Users\macilamanym\AppData\Roaming\npm\node_modules\browserify\node_modules\through2\node_modules\readable-stream\lib\_stream_writable.js:485:3)
at DestroyableTransform.Writable.end (C:\Users\macilamanym\AppData\Roaming\npm\node_modules\browserify\node_modules\through2\node_modules\readable-stream\lib\_stream_writable.js:455:41)
at DestroyableTransform.onend (C:\Users\macilamanym\AppData\Roaming\npm\node_modules\browserify\node_modules\through2\node_modules\readable-stream\lib\_stream_readable.js:495:10)

这是因为 .node 文件无法读取或无法浏览吗?如果是这样,我该如何处理这个模块并浏览我的模块?请指教。

下面是 gulp browserify 任务。

gulp.task('browserify', function() {
// Single entry point to browserify
gulp.src('lib/main/EdgeNodeBrowserify.js')
.pipe(browserify({
standalone: 'EdgeNode'
}))
.pipe(rename('browserEdgeNode.js'))
.pipe(gulp.dest('./build/js'))
});

最佳答案

它实际上是一个插件,通常用于提供在 nodejs 中运行的 JavaScript 和底层 C/C++ 库之间的接口(interface)。该文件是由构建步骤生成的二进制文件。在 node.js 中,这些插件可以包含在 require 中,但它们不能被浏览器化,因为它没有意义。

我不确定为什么在浏览器端需要这样的 C/C++ 绑定(bind)。一种方法是在捆绑时忽略此类模块

    // assuming you use gulp-browserify
// please be advised not to use that since it's no longer being maintained
.pipe(browserify({
ignore : ['chilkat_win32']
}))

关于javascript - 浏览包含 Node 模块的文件,其中没有 .js 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37849152/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com