Img.src = "/game/shared/data/test.png"; — ожидал, что оно найдет файл относительно текущей папки, а оказалось, ищет файл там → "C://game/shared/data/test.png" и не находит.
Немного повозился, методом тыка нашел, что надо было указывать так:
"./game/shared/data/test.png"
Вопрос: При чем тут точка, как называются такие штуки, и где можно об этом почитать?)
JavaScript
Как правильно указывать путь к файлу?
Вообще-то это стандартные имена, существующие в любой директории, кроме корневой - что в *NIX, что в MS-DOS, что в Windows:
. - текущая директория (ссылка директории на саму себя)
.. -родительская директория
Таким образом, конструкция "./game/shared/data/test.png" эквивалента "game/shared/data/test.png".
. - текущая директория (ссылка директории на саму себя)
.. -родительская директория
Таким образом, конструкция "./game/shared/data/test.png" эквивалента "game/shared/data/test.png".
Что бы расшаривать статику правильным образом - нужно обращаться не через файловую систему, а через хостинг статических файлов, который проще всего сделать командой serve, пишешь в консоли serve (должен быть установлен глобально через npm и требует установки NodeJS), открывается порт localhost, который работает как обычный сайт на сервере. С использованием скриптов стилей и ссылок к файлам в файловой системе так или иначе будет каша.
Абсолютный путь в формате URI:
scheme://<host[:port]><path>
, где host - это либо IP, либо доменное имя, либо ничего (только при схеме file:). Дополнительно, перед хостом может быть указано имя пользователя.
Относительные пути в URI (но не в ФС):
[//]<host>/<path> - от схемы
/<path> - от корневой директории ресурса
Относительные пути "универсальные" (и в URI, и в ФС):
[./]<path> - от текущей директории
../<path> - от директории уровнем выше текущей (../../<path> - от директории двумя уровнями выше, и т. д.)
Абсолютный путь в локальной ФС (в позикс-лайк, не в винде):
/<path> - от корня файловой системы
〰〰〰〰〰〰〰〰
На самом деле, первый / в пути является его частью. То есть, тут во всех случаях кроме самого первого, <path> - это относительная часть пути, для наглядности.
В URI без схемы, браузеры используют http: как фоллбэк, если часть // не указана. Насколько знаю, это не по стандарту (т. е. относительные URI без // просто невалидны), но так исторически сложилось - чтобы юзера не заставлять набирать схему в адресной строке :)
scheme://<host[:port]><path>
, где host - это либо IP, либо доменное имя, либо ничего (только при схеме file:). Дополнительно, перед хостом может быть указано имя пользователя.
Относительные пути в URI (но не в ФС):
[//]<host>/<path> - от схемы
/<path> - от корневой директории ресурса
Относительные пути "универсальные" (и в URI, и в ФС):
[./]<path> - от текущей директории
../<path> - от директории уровнем выше текущей (../../<path> - от директории двумя уровнями выше, и т. д.)
Абсолютный путь в локальной ФС (в позикс-лайк, не в винде):
/<path> - от корня файловой системы
〰〰〰〰〰〰〰〰
На самом деле, первый / в пути является его частью. То есть, тут во всех случаях кроме самого первого, <path> - это относительная часть пути, для наглядности.
В URI без схемы, браузеры используют http: как фоллбэк, если часть // не указана. Насколько знаю, это не по стандарту (т. е. относительные URI без // просто невалидны), но так исторически сложилось - чтобы юзера не заставлять набирать схему в адресной строке :)
может подойдет
Абсолютный и относительный путь к файлам
https://www.uamedwed.com/blog/web/absolyutnyj-i-otnositelnyj-put-k-fajlam.html
Абсолютный и относительный путь к файлам
https://www.uamedwed.com/blog/web/absolyutnyj-i-otnositelnyj-put-k-fajlam.html
. - ссылается на себя
.. -на раздел вверх
Проще самому поюзать разные пути (абсолютные, относительные), разные способы записи и все будет понятно)))
.. -на раздел вверх
Проще самому поюзать разные пути (абсолютные, относительные), разные способы записи и все будет понятно)))
Похожие вопросы
- Каким образом или софтом можно скачать файлы массово с сайта? Фото сайта внутри.
- подключение и доступ к файлам java script
- почему так много js файлов?
- Как правильно строить архитектуру папок с исполняемыми файлами при написании сайтов?
- Что такое статические файлы
- Возможно ли сжать все эти скрипты в один файл?
- можно ли ссылаться на близлежащий файл, а не на сервер
- Зачем вообще нужны базы данных? Не лучше ли их хранить в файлах json?(вопрос может показаться глупым)
- Почему split не работает и правильно ли написана функция? javascript. Помогите, пожалуйста
- Порядок изучени JavaScripta. Путь к Node.js. Нужен совет по обучению от программистов