Я делаю это следующим образом:
Используя HttpClient и этот код: this.http.get ("url / assets / file.json");
Но если мой файл конфигурации находится в папке с ресурсами, моя информация открывается в Интернете.
Как я могу прочитать этот файл во внутренней папке (не в активах)?
У меня есть маршруты к моим компонентам, а затем, когда я пытаюсь получить доступ к другому файлу (вне папки с ресурсами), мой код перенаправляется на страницу 404. Если мне нужны файлы для чтения, они должны оставаться в активах или другой папке, если у меня есть ссылка на '.angular-cli.json' после этой структуры: "apps": [{"root": "src", "outDir": " dist "," assets ": [" assets "," FOLDERNAMEHERE "," favicon.ico "], ...} Вы знаете, как я могу прочитать свой файл конфигурации, но во" внутренней папке ". Например, мой файл конфигурации не может получить доступ по URL-адресу.
вы должны учитывать, что если вы используете http.get ('url / assets / file.json'), url / assets / file.json должен быть доступен откуда угодно. Итак, почему использование конфигурации / константы машинописного текста - лучший способ, если вы этого не хотите?
Спасибо @Fetrarij





Что, если вы поместите свой файл конфигурации, как в environment.ts? ваш файл конфигурации будет скомпилирован, как и другие файлы ts.
вы просто создаете файл машинописного текста и добавляете свою конфигурацию в переменную:
export const myconfig = 'your config here';
и вам не нужно для этого вызывать http, просто;
import { myconfig } from 'your_config_file'
Да, но мне нужно снова все скомпилировать. Это лучший способ решить эту проблему? Или есть другой способ сделать это? Заранее спасибо за помощь!
если вы хотите использовать json-файл и http-вызов, он всегда должен быть доступен откуда угодно. Так что я думаю, что это лучший способ.
Каждый файл, который вы публикуете в приложении angular, является общедоступным. Что вы имеете в виду, говоря «прочитать этот файл во внутренней папке»?