Установите для «fs» значение «пусто» или «false», что не позволяет пакету браузера внутри browserify работать в Интернете. - PullRequest
1 голос
/ 06 февраля 2020

Ребята, вы знаете, почему этот пакет browser-pack предназначен для работы с browserify , но с индексом . js использует fs и path?

У меня такой же вопрос и для browserify и после того, как я обнаружил, что browserify использует fs в его индексе. js file.

var fs = require('fs');
var path = require('path');

var combineSourceMap = require('combine-source-map');

var defaultPreludePath = path.join(__dirname, '_prelude.js');
var defaultPrelude = fs.readFileSync(defaultPreludePath, 'utf8');

Я не использую CLI для их запуска, я запускаю browserify через его поддержку API, как показано ниже, при нажатии кнопки на Веб-интерфейс:

import browserify from 'browserify';

const rs = browserify(fileContentStreams, opts)
   .transform('brfs')
   .transform(sassify, {
       base64Encode: false,
       sourceMap: false
   }) ...

...

Поскольку browserify уже заявил, что:

Browserify - это инструмент с открытым исходным кодом JavaScript, который позволяет разработчикам писать Node. Модули в стиле * 1064, которые компилируются для использования в браузере. Browserify позволяет вам использовать require в браузере так же, как вы используете его в Node. Это не просто syntacti c sugar для загрузки скриптов на клиенте.

Я не могу использовать Browserify на стороне браузера , и я попробовал как следующий в webpack.config.js, но в любом случае выдает ошибки:

node: { fs: 'empty' }

или

node: { fs: false }

В предыдущем параметре выбрасывается fs.readFileSync is not a function, а для последнего была выдвинута длинная цепочка ошибок, поскольку в browser-pack используется fs.readFileSync.

Это ошибки после завершения сборки webpack:

WARNING in ./node_modules/browserify/index.js 396:16-30
Critical dependency: the request of a dependency is an expression

WARNING in ./node_modules/module-deps/index.js 302:20-32
Critical dependency: the request of a dependency is an expression
 @ ./node_modules/browserify/index.js
...