Андрей
так там компоненты это синтаксический сахар для пары свойств директив
Андрей
То есть сделали работу в компонентном режиме удобнее, чтобы не писать лишние строчки. А так и на директивах то же самое (компонентами пишешь), только один и тот же сахарный код дублируешь, типа не наследовать скоупы и так далее.
Serhii
Я на а2 не писал, но все в компонентах
Serhii
Или ты в чем увидел улучшения?
Андрей
Я хочу сказать что и на a1.3 можно компонентами писать, компоненты в a1.5 это синтаксический сахар для директив с определенными свойствами. Круто что ты пишешь компонентами.
Serhii
Так в чем улучшение? Только в структуре проекта?
Serhii
Выкидывание статических темплейтов и перевод всего где есть переменные во вью в компоненты?
Андрей
Андрей
где директива там функция только должна быть, которая возвращает описание, сорян
Андрей
все отличие
Serhii
Это улучшение?
Serhii
я вот какой эффект заметил - у тех, кто начал писать на ангуляре 2+ , улучшается код в angular1. Видимо, потому что он насильно заставляет все по компонентам разбивать
Oleg
Привет!
Можно ли как-то компонент параметром передать внутрь другого компонента?
Oleg
нужно передать компоненту внутрь модального окна
usernameak
хэээй
usernameak
я понял реакт
usernameak
но нихера не пойму в ангуляре
usernameak
что делать
Serhii
Делай модуль
Aleksei
в любой непонятной ситуации
Michael
Serhii
компонент параметром передать внутрь другого компонента
Serhii
госпди
Serhii
зчм
Serhii
почему не конфигурацию с ключ - название / тип компонента и значение - темплейт
Serhii
а темплейт компонента это уже
<component options="data"></component>
Serhii
хотя ладно, кто знает что у тебя за кейс
Oleg
Oleg
не совсем понял как это
Serhii
ну смотри, я так понял у тебя есть разные типы данных
Serhii
и тебе по разному надо их отображать
Serhii
так?
Oleg
Да
Serhii
выходит у тебя у каждых данных есть детерминация типа - поле которое определяет их отличие так?
Serhii
значит у тебя будет 2 компонента - 1 зовется список, а второй - один айтем
Oleg
Да их много что отличает
Serhii
должно быть хотя бы поле type которое бы позволило тебе автоматизировать подстановку компонентов
Oleg
У каждого компонента своя логика и свои контроллеры
Serhii
и ты бы кормил в компонент "список" весь массив обьектов, а список в зависимости от типа в ng-repeat подставлял урл на темплейт
Oleg
И есть parent внутрь которого этот компонент и нужно передать
Oleg
ну да, 1 вариант это делать урл с темплейтом, тогда вообще можно инклюдом закинуть
Oleg
но тогда я внутрь этого компонента ничего не передам
Serhii
используя одну переменную
const TEMPLATES = { stringComponent: '$template', selectComponent: '$template' }
ты бы писал
ng-include="TEMPLATES[item.type]"
Oleg
Serhii
хотя через инклуд так себе, тебе же нужно передать в него данные. тут разве что тогда в темплейт не урл давать а сразу писать
<component data="item">
Serhii
ну да, разве что через compile
Oleg
ну вот, я и сделал через compile )
Serhii
только в конфиг вынеси
Serhii
без конфига заебешься потом менять что либо, а так через одну переменную
Anonymous
Друзья, собрал в одном месте 132 чата для программистов - @Chats_Developers. Пользуйтесь на здоровье.
Oleg
Serhii
конечно можно было насерить всех компонентов с
ng-if="item.type"
Serhii
но это то же только с другой стороны
usernameak
Serhii
это this.state, только в темплейте присвоен
usernameak
А щто такое view
Serhii
где именно
Serhii
контекст мне передай
usernameak
Вобще
usernameak
Serhii
ммм
Serhii
считай это темплейтом к которому привязан обьект $scope и которым управляет привязаный к нему контроллер или даже без него
Serhii
а ты начал читать документацию что ли?
Aleksei
Г-да, а есть тру-вей как писать компоненты на ts под ng 1.5 ? писал ли кто-нибудь?
Serhii
на тс..
Oleg
Aleksei
примерную структуру можешь накидать?
Serhii
ничего не истинно, все на ангуляре дозволено
Oleg
примерную структуру можешь накидать?
Я использую декоратор - что делает компонент хоть немного приблеженным к нг2
export const Component = function(options: ng.IComponentOptions): Function {
return (controller: Function) => {
return angular.extend(options, {controller});
};
};
Serhii
главное чтобы можно было выпилить в любой момент
Oleg
import {Component} from '../../core/core.decorators';
@Component({
bindings: {
prop: '<'
},
template: `<p> testststst </p>`
})
export class TestComponent {
prop: string;
constructor() {
console.log('test');
}
}
Aleksei
Vlad
тоже статическое поле, потом создаешь одноименные поля в контроллере
Aleksei
Aleksei
аа