Я пытаюсь запустить "node index.js" и получаю следующее сообщение об ошибке:
ValidationError: Недопустимый объект конфигурации. Webpack был инициализирован с использованием объекта конфигурации, который не соответствует схеме API.
Вот мой webpack.config.js
module.exports = {
entry: [
'./main.js',
],
output: {
path: '/',
filename: 'main-bundle.js',
},
module: {
rules: [
{
test: /\.jsx?$/,
exclude: /node_modules/,
loader: ['babel-loader'],
},
{ test: /\.css$/, loader: 'style-loader!css-loader' },
{ test: /\.eot(\?v=\d+\.\d+\.\d+)?$/, loader: 'file-loader' },
{
test: /\.(woff|woff2)$/,
loader: 'url-loader',
options: {
prefix: 'font/',
limit: '5000',
},
},
{
test: /\.ttf(\?v=\d+\.\d+\.\d+)?$/,
loader: 'url-loader',
options: {
limit: 10000,
mimetype: 'application/octet-stream',
},
},
{
test: /\.svg(\?v=\d+\.\d+\.\d+)?$/,
loader: 'url-loader',
options: {
limit: '10000',
mimetype: 'image/svg+xml',
},
},
],
},
};
Пожалуйста, помогите мне найти ошибку, я прочитал документацию и просто не могу ее найти!
res.end(<html><head><title>Hello, world!</title></head><body><h1>Hello, world!</h1>
HTML-код, который вы отправляете отсюда (и по всему коду), должен быть в виде строки, чтобы он мог проанализировать его, а затем отправить этот HTML-код позже, потому что вы не можете просто поместить HTML-код куда угодно в Javascript (и это не React для пример).
// the right way to do it
res.end("<html><head><title>Hello, world!</title></head><body><h1>Hello, world!</h1>")
Также заключите все другие вхождения html в свой код в кавычки, чтобы они тоже стали допустимыми строками.
Вам нужно передать html в строке res.end
. Поскольку у вас есть несколько строк html, вы можете использовать шаблонные литералы (обратите внимание на обратные кавычки `..`), чтобы упростить задачу.
Используя шаблонные литералы, вы можете определять встроенные выражения с помощью ${expression}
, которые будут объединены в результирующую строку. В вашем примере это используется для установки, например. имя хоста: ${os.hostname}
:
res.end(`<html><head><title>Operating System Info</title></head><body><h1>Operating System Info</h1>
<table>
<tr><th>TMP Dir</th><td>${os.tmpdir()}</td></tr>
<tr><th>Host Name</th><td>${os.hostname()}</td></tr>
<tr><th>OS Type</th><td>${os.type()}</td></tr>
${os.platform()}
${os.arch()} $os.release()}</td></tr>
<tr><th>Uptime</th><td>${os.uptime()} ${util.inspect(os.loadavg())}</td></tr>
<tr><th>Memory</th><td>total: ${os.totalmem()} free: ${freemem()}</td></tr>
<tr><th>CPU's</th><td><pre>${util.inspect(os.cpus())}</pre></td></tr>
<tr><th>Network</th><td><pre>${util.inspect(os.networkInterfaces())}</pre></td>,/tr>
</table>
</body></html>`);
Я получил несколько отрицательных голосов по этому вопросу и был заблокирован от вопросов. Руководство пользователя предписывает переписать вопрос, чтобы сделать его лучше для сообщества, поэтому я написал новые вопросы. Я действительно понятия не имею, как выйти из заблокированного статуса! Я не знаю, что я делаю! Можете ли вы дать несколько советов?
Насколько я понимаю, вам следует просто улучшить существующий, а не переписывать его как совершенно новый вопрос. К сожалению, на самом деле вы мало что можете сделать, пока за ваши вопросы не проголосуют, боюсь. В любом случае, я проголосовал за ваш вопрос, так как, на мой взгляд, все было в порядке.
Я принял ваш ответ и также проголосовал за него. Спасибо, я ценю, что вы проголосовали за мой!
@ Адам: почему ты не принял? Если ваш вопрос изменился, напишите новый...