Вопрос №55280 от пользователя Dmitry Fyodorov в проекте «Игры разума»

Dmitry Fyodorov

Добрый день! Вопрос по проекту 1, шаг 3. В файл cli.js скопировал код var readlineSync = require('readline-sync'); // Wait for user's response. var userName = readlineSync.question('May I have your name? '); console.log('Hi ' + userName + '!'); сам он работает. Не разобрался как организовать экспорт из этого файла и импорт в файл brein-games.js? Тему модулей повторил несколько раз. не доходит до меня.

export function hello() { var readlineSync = require('readline-sync'); // Wait for user's response. var userName = readlineSync.question('May I have your name? '); console.log('Hi ' + userName + '!'); } это описал в файле cli.js. Что-то не так сделал? Файл brain-games:

!/usr/bin/env node

import { hello } from '../src/cli.js'; console.log('Welcome to the Brain Games!'); hello(); Ошибка: Welcome to the Brain Games! file:///home/dimon76/frontend-project-lvl1/src/cli.js:2 var readlineSync = require('readline-sync'); ^ ReferenceError: require is not defined at hello (file:///home/dimon76/frontend-project-lvl1/src/cli.js:2:20) at file:///home/dimon76/frontend-project-lvl1/bin/brain-games.js:4:1

2 0

Stanislav Dzisiak

dimon76, приветствую!

Тут всё дело в том, что при использовании нативных модулей (речь о свойстве "type": "module" в package.json) функция require недоступна и для подключения библиотек нужно использовать import. При реализации проекта используйте синтаксис ES6 с использованием import и export как показано в примерах урока "Модули".

0

Dmitry Fyodorov

Спасибо, так работает

0

Используйте Хекслет по-максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»
Рекомендуемые программы
профессия
от 6 300 ₽ в месяц
Разработка фронтенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 1 июня
профессия
от 5 025 ₽ в месяц
новый
Сбор, анализ и интерпретация данных
9 месяцев
с нуля
Старт 1 июня
профессия
от 6 300 ₽ в месяц
Разработка веб-приложений на Django
10 месяцев
с нуля
Старт 1 июня
профессия
от 6 300 ₽ в месяц
Разработка приложений на языке Java
10 месяцев
с нуля
Старт 1 июня
профессия
от 6 300 ₽ в месяц
Разработка веб-приложений на Laravel
10 месяцев
с нуля
Старт 1 июня
профессия
от 6 183 ₽ в месяц
Ручное тестирование веб-приложений
4 месяца
с нуля
Старт 1 июня
профессия
от 6 300 ₽ в месяц
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 1 июня
профессия
от 10 080 ₽ в месяц
Разработка фронтенд- и бэкенд-компонентов для веб-приложений
16 месяцев
с нуля
Старт 1 июня
профессия
от 5 840 ₽ в месяц
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 1 июня
профессия
Верстка с использованием последних стандартов CSS
5 месяцев
с нуля
Старт в любое время
профессия
от 6 300 ₽ в месяц
новый
Автоматизированное тестирование веб-приложений на JavaScript
10 месяцев
с нуля
в разработке
дата определяется