Путь к файлу main.js
Структура папок
В результате отображается страница со следующими ошибками
Подскажите как устранить ошибки (как правильно задать путь к файлу main.js в том числе). Файл main.js лежит в папке src
P.S. Когда код был следующим
Karte - Multipurpose E-Commerce Html Template --> Karte. -->

выдавало следующие ошибки
Main js что это
Документ не должен иметь более одного элемента у которого не указан атрибут hidden .
| Категории контента | Основной поток, явный контент. |
|---|---|
| Допустимое содержимое | Основной поток. |
| Пропуск тегов | Ни одного; Оба тега, открывающий и закрывающий, являются обязательными. |
| Допустимые родители | Те, в которых разрешается контент основного потока в качестве содержимого, но только если это иерархически корректный main элемент. |
| Допустимые ARIA-роли | Роль main применяется к по умолчанию, и роль presentation (en-US) также разрешена. |
| DOM-интерфейс | HTMLElement |
Атрибуты
К этому элементу применимы только глобальные атрибуты.
Примечание
Содержимое элемента должно быть уникальным для документа. Содержимое, которое повторяется в наборе документов или разделах документа, такое как боковые панели, навигационные ссылки, информация об авторских правах, логотипы сайта и поисковые формы, не должно добавляться, за исключением формы поиска, если она является основной функцией страницы.
не вносит вклад в структуру документа; то есть, в отличие от таких элементов, как , заголовков, таких как (en-US) и т.п., не влияет на концепцию DOM структуры страницы. Он носит исключительно информативный характер.
Пример
main> h1>Яблокиh1> p>Яблоко - плод яблони, который употребляется в пищу в свежем виде, служит сырьём в кулинарии и для приготовления напитков.p> article> h2>Сорт "Ред Делишес"h2> p>Эти ярко-красные яблоки являются одними из самых популярных в Соединённых Штатах.p> p>. p> p>. p> article> article> h2>Сорт "Гренни Смит";/h2> p>Эти сочные, зелёные яблоки являются одними из самых популярных в мире.p> p>. p> p>. p> article> main>
Результат
Проблемы доступности
Ориентир
Элемент ведёт себя как роль-ориентир main (en-US) . Ориентиры могут использоваться вспомогательными технологиями для быстрой идентификации и навигации по большим разделам документа. Предпочтительно использовать элемент вместо объявления role=»main» , если не нужна поддержка старых браузеров.
Пропуск навигации
Пропуск навигации, также известный как «skipnav», это техника которая позволяет пользователю вспомогательных технологий совершать быстрый обход больших разделов повторяющегося контента (главная навигация, информационные баннеры и т.д.). Это позволяет пользователю получить доступ к основному контенту страницы быстрее.
Добавление атрибута id в элемент позволяет ему становится целью для ссылки пропуска навигации.
body> a href="#main-content">Перейти к основному контентуa> main id="main-content"> main> body>
Режим чтения
Функционально режим чтения браузера будет искать наличие элемента , а также элементов заголовка и секционных элементов, которые преобразовывают контент в специальный вид для чтения.
Спецификации
| Specification |
|---|
| HTML Standard # the-main-element |
Совместимость с браузерами
BCD tables only load in the browser
Элемент широко поддерживается. Для Internet Explorer 11 и ниже предлагается добавить роль ARIA «main» в элемент , чтобы обеспечит его доступность (программы для чтения с экрана, такие как JAWS, используемые совместно со старыми версиями Internet Explorer, смогут понять семантическое значение элемента после добавления атрибута role ).
main role="main">. main>
Смотрите также
- Основные структурные элементы: , ,
- Связанные с этим разделом элементы: , , , , or
- ARIA: роль main (en-US)
Found a content problem with this page?
- Edit the page on GitHub.
- Report the content issue.
- View the source on GitHub.
This page was last modified on 6 янв. 2024 г. by MDN contributors.
Your blueprint for a better internet.
Разбираем Node.js. Как свойство main в package.json определяет точку входа

При загрузке зависимости Node.js работает в два этапа. Это достаточно сильно отличается от загрузки модулей, встроенных в Node.js, например, с помощью require(‘fs’) или локального модуля с помощью require (‘./queue/mem.js’) . Зависимость загружается в два основных этапа:
— Поиск нужной директории;
— Поиск точки входа;
Поиск директории
Среда выполнения анализирует все директории, которые находятся на пути от текущего файла к корню файловой системы. В каждой директории Node.js проверяет, содержит ли она папку node_modules . В случае, если поиск заканчивается успехом, среда выполнения переходит внутрь этой директории и ищет внутри поддиректорию, имя которой должно соответствовать имени загружаемого модуля. То есть, если мы импортируем lodash — require(‘lodash’) , то Node.js будет искать директорию node_modules/lodash . Node.js будет это делать, пока не найдет совпадение.
Поиск точки входа
Найдя нужную директорию, Node.js попробует несколько стратегий для определения точки входа. Точкой входа является файл, module.exports которого возвращается в качестве значения вызова функции require() .
Сначала Node.js ищет package.json файл и проверяет, содержит ли он свойство main . Оно будет использоваться для указания на файл внутри директории пакета, который и будет точкой входа. Если main не существует, то Node.js будет пытаться загрузить файлы в следующем порядке — index.js, index.json, index.node.
— Если package.json содержит свойство main ;
— Если свойства main нет, то Node будет загружать по порядку — index.js, index.json, index.node .
Как выглядит точка входа для популярных пакетов
То, что происходит внутри пакетов, зависит от их авторов. Есть несколько способов указать точку входа в определенный пакет. Вот так это делают некоторые популярные модули npm.

При этом многие пакеты определяют свойство main , и только некоторые оставляют его для поиска по умолчанию.
Адаптированный перевод статьи Main property in package.json defines package entry point с сайта Byte Archer by Panu Pitkamaki. Мнение администрации Хекслета может не совпадать с мнением автора оригинальной публикации.
Включение JavaScript файла в другой JavaScript файл

Очень часто при работе с JavaScript возникает потребность использовать код из одного файла в другом. Это особенно актуально при создании больших проектов, когда код разбивается на модули для удобства поддержки и расширения функционала. В этом случае полезно знать, как подключить один JavaScript файл к другому.
Например, есть файл main.js , в котором написана основная логика работы приложения, и файл utils.js , в котором находятся полезные функции, которые могут быть использованы в разных частях приложения. Чтобы использовать эти функции в файле main.js , его нужно подключить.
Использование тега script
Самый простой способ подключить JavaScript файл — использовать HTML тег .
Сначала подключается файл utils.js , затем — main.js . Порядок подключения важен: файлы выполняются в том порядке, в котором они подключены.
Использование модулей ES6
С приходом ES6 стандарта в JavaScript появилась возможность использовать модули. Это позволяет подключать одни файлы к другим с помощью директив import / export .
Чтобы экспортировать функцию из файла utils.js , нужно добавить перед ней ключевое слово export :
export function usefulFunction() < // some code here >
Затем в файле main.js можно импортировать эту функцию:
import < usefulFunction >from './utils.js'; // теперь можно использовать usefulFunction
Обратите внимание, что при использовании модулей ES6 порядок подключения файлов в HTML не имеет значения, так как импорты обрабатываются JavaScript перед выполнением кода.
Использование CommonJS
Если проект разрабатывается на Node.js, то для подключения файлов используется модульная система CommonJS. В этом случае файлы подключаются с помощью функции require .
В файле utils.js нужно экспортировать функцию с помощью module.exports :
function usefulFunction() < // some code here >module.exports = usefulFunction;
А в файле main.js подключить её с помощью require :
var usefulFunction = require('./utils.js'); // теперь можно использовать usefulFunction
Таким образом, существует несколько способов подключить JavaScript файл к другому. Выбор подхода зависит от конкретной ситуации и используемого окружения разработки.