Как импортировать модуль узла или файл JavaScript без зависимости от webpack при использовании create-react-app?

#javascript #reactjs #webpack #create-react-app

#javascript #reactjs #webpack #create-react-app

Вопрос:

Я пытаюсь включить отдельный файл JavaScript (server.js ) из моего index.js файл с использованием create-react-app. Это server.js в файле используется npm zeromq модуль узла, который, похоже, плохо работает с webpack. Из-за этого я либо пытаюсь исключить zeromq модуль узла, либо server.js .

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

 {
  ...
  test: /.(js|mjs|jsx)$/,
  exclude: /server.js$/,
  ...
}
  

К сожалению, все примеры, которые я нашел, не похожи на файл конфигурации, который у меня есть в настоящее время. Моя сгенерированная конфигурация из project / node_modules / webpack / config выглядит примерно так…

 ...
const cssModuleRegex = /.module.css$/;
const sassRegex = /.(scss|sass)$/;
const sassModuleRegex = /.module.(scss|sass)$/;

// This is the production and development configuration.
// It is focused on developer experience, fast rebuilds, and a minimal bundle.
module.exports = function(webpackEnv) {
  const isEnvDevelopment = webpackEnv === 'development';
  const isEnvProduction = webpackEnv === 'production';
...
  

Я импортирую server.js файл из index.js стандартным способом.

 import './server.js'
  

Ответ №1:

Так что, возможно, ваша проблема в том, что вам просто нужно иметь

 import server from './server.js';
  

Или любой другой конкретный модуль, который вам нужен. При этом, если у вас возникли проблемы с чем-то, несовместимым с webpack, возможно, стоит попробовать вместо этого использовать оператор require . Итак, что-то вроде:

 const server = require('./server.js');
  

Также вы удалили свое приложение react? Часто бывает проще модифицировать части ваших сценариев сборки, если вы извлекли приложение, созданное с помощью create-react-app.

Комментарии:

1. Спасибо за предложения! Я проведу небольшое исследование по отклонению и посмотрю, сработает ли это, и вернусь к сообщению.