Size: a a a

Советский Angular

2021 March 03

J💖

JSON Jenny 💖 in Советский Angular
Пёß Цифроwого Сопротивlения
if (this.userService.canDisplay(this.canDisplay)) {
     this.viewContainerRef.createEmbeddedView(this.template);
   } else {
// вот тут хочу рендер текста
  }
Ты также создаёшь embeddedView просто с шаблоном, где лежит текст
источник

J💖

JSON Jenny 💖 in Советский Angular
Думаю можно создать TemplateRef программно
источник

П

Пёß Цифроwого Сопрот... in Советский Angular
JSON Jenny 💖
Ты также создаёшь embeddedView просто с шаблоном, где лежит текст
про то и вопрос собственно. в доках там ничего про это не сказано
источник

J💖

JSON Jenny 💖 in Советский Angular
Пёß Цифроwого Сопротивlения
про то и вопрос собственно. в доках там ничего про это не сказано
Надо посмотреть как TemplateRef создаётся
источник

П

Пёß Цифроwого Сопрот... in Советский Angular
я не раз задавался этим вопросом. у меня вообще сложилось впечатление, что это невозможно
одна надежда на благородных Донов
источник

MA

Maxim Afanasev in Советский Angular
Как обойти вот такую странность TS?
const fruitsById: {[id:string]:Fruit} = {};
const banana = fruitsById['banana'];

TS выводит тип banana - Fruit. Хотя, очевидно, что правильный тип - Fruit | undefined. Заюзал Map, но мне это всё еще покоя не даёт.
источник

J💖

JSON Jenny 💖 in Советский Angular
Пёß Цифроwого Сопротивlения
я не раз задавался этим вопросом. у меня вообще сложилось впечатление, что это невозможно
одна надежда на благородных Донов
В исходники смотрел?
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
Пёß Цифроwого Сопротивlения
if (this.userService.canDisplay(this.canDisplay)) {
     this.viewContainerRef.createEmbeddedView(this.template);
   } else {
// вот тут хочу рендер текста
  }
можно рендерить компонент, в шаблоне которого будут рендеринг нужной строки

напрямую отрендерить строку не получится, так как нужен ViewRef хотя бы
источник

П

Пёß Цифроwого Сопрот... in Советский Angular
Вертихвост キバ 🏡🦊
можно рендерить компонент, в шаблоне которого будут рендеринг нужной строки

напрямую отрендерить строку не получится, так как нужен ViewRef хотя бы
так его как-то нужно создать компонет?
источник

J💖

JSON Jenny 💖 in Советский Angular
Вертихвост キバ 🏡🦊
можно рендерить компонент, в шаблоне которого будут рендеринг нужной строки

напрямую отрендерить строку не получится, так как нужен ViewRef хотя бы
Почему нельзя ViewRef создать программно?
источник

J💖

JSON Jenny 💖 in Советский Angular
JSON Jenny 💖
Почему нельзя ViewRef создать программно?
Я могу добавить в бади скрытый элемент и получить ссылку на него, если нужен дом элемент для создания ViewRef
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
Пёß Цифроwого Сопротивlения
так его как-то нужно создать компонет?
ты можешь рядом с директивой написать его и использовать, даже декларировать в модуле не надо
источник

П

Пёß Цифроwого Сопрот... in Советский Angular
Вертихвост キバ 🏡🦊
ты можешь рядом с директивой написать его и использовать, даже декларировать в модуле не надо
прям в тс? или в шаблоне
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
JSON Jenny 💖
Почему нельзя ViewRef создать программно?
ответ "потому что так" тебя устроит?)
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
Пёß Цифроwого Сопротивlения
прям в тс? или в шаблоне
прям в тс
источник

J💖

JSON Jenny 💖 in Советский Angular
Вертихвост キバ 🏡🦊
ответ "потому что так" тебя устроит?)
Неа
источник

J💖

JSON Jenny 💖 in Советский Angular
Мне либо код, объясняющий, либо словами
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
Пёß Цифроwого Сопротивlения
прям в тс? или в шаблоне
@Component({ template: 'мой текст' })
класс МойТекстКомпонент {}

@Directive({ ... })
класс МояДирективаРендерющаяШаблоны {
 метод() {
  if (this.userService.canDisplay(this.canDisplay)) {
     this.viewContainerRef.createEmbeddedView(this.template);
   } else {
     const componentFactory = componentFactoryResolver.resolveComponentFactory(МойТекстКомпонент);

     this.viewContainerRef.createComponent(componentFactory);
  }
 }
}
источник

П

Пёß Цифроwого Сопрот... in Советский Angular
Вертихвост キバ 🏡🦊
@Component({ template: 'мой текст' })
класс МойТекстКомпонент {}

@Directive({ ... })
класс МояДирективаРендерющаяШаблоны {
 метод() {
  if (this.userService.canDisplay(this.canDisplay)) {
     this.viewContainerRef.createEmbeddedView(this.template);
   } else {
     const componentFactory = componentFactoryResolver.resolveComponentFactory(МойТекстКомпонент);

     this.viewContainerRef.createComponent(componentFactory);
  }
 }
}
ага 👌
источник

IE

Igor' Ember in Советский Angular
Извиняюсь за тупой вопрос, но DistinctUntilChanged будет работать со ссылочными типами данных? (объекты, в том числе массивы)? Или в этом случае иммутабельные типы данных нужны? (какой-нибудь immutableJS использовать) ?
источник