#json #angular
#json #угловатый
Вопрос:
Я хотел бы знать, как отобразить один узел из файла json в приложении angular.
Это мои данные.json:
{
"name": "John";
"surname": "Doe
}
Я хотел бы вывести в угловой компонент результат фамилии. Таким образом, я могу создать компонент ReadJson:
export class ReadJsonComponent implements OnInit {
data: any = (data as any).default;
constructor() {
console.log(data.surname);
}
ngOnInit(): void {
}
}
Я не могу сделать это с другим компонентом (например, с заголовком). Не могли бы вы, пожалуйста, сказать мне, что я делаю не так?
Ответ №1:
Сначала импортируйте файл JSON следующим образом.
import myJson = require("./myJson.json");
затем установите его в локальной переменной,
data: any = myJson;
затем используйте его везде, где захотите.
export class AppComponent implements OnInit {
name = "Angular";
data: any = myJson;
ngOnInit() {
console.log("surname", this.data.surname);
}
}
Комментарии:
1. Спасибо за ваш ответ. Следуя вашему коду, предположим, что я поместил это в AppComponent. Теперь, как я могу получить доступ
{{ data.surname }}
, например, к HeaderComponent?2. импортируйте снова в header.compoenent.ts, лучше дайте мне сценарий в stackbiltz, он сможет помочь.
3. Спасибо, так вы имеете в виду, что я должен импортировать это в каждый компонент? Нет способа передать json от родительского к дочернему? Заранее спасибо
4. можно отправить данные от родителя к потомку 2 способами: либо использовать Сервисы, либо @Input в дочернем компоненте.