Можем ли мы создать несколько компонентов с одинаковым именем в angular 2? - PullRequest
0 голосов
/ 11 мая 2018

Я создаю v2 для моего интерфейса.Я хочу сохранить старый интерфейс и внести изменения.Поэтому я думал о том, чтобы сохранить имя нового компонента таким же, как и у старого.

То есть можно иметь 2 разных компонента с одинаковым именем?

Ответы [ 2 ]

0 голосов
/ 11 мая 2018

Лучший способ создать версию v2 - использовать контроль версий для перехода от старого интерфейса пользователя или реструктурировать приложение для использования нового интерфейса. Ни при каких обстоятельствах я бы не рекомендовал создавать компоненты с одинаковыми именами, особенно если они служат одной цели. Это только сбило бы с толку как себя, так и других разработчиков.

С учетом вышесказанного, если вам нужны компоненты для общей логики. Я бы посоветовал вам сделать так, чтобы ваши компоненты наследовали базовый класс:

export abstract class BaseComponent implements OnInit {
    ngOnInit() {
        // Example
    }
}

@Component({
    selector: 'a-selector'
})
export class NewComponent extends BaseComponent {
}
0 голосов
/ 11 мая 2018

То, что вы могли бы сделать, - это иметь два класса, один старый и один новый, с семантическими именами, а не с новым и старым, конечно, и в пределах класса мастер-компонента иметь логику для переключения между ними.

или вы можете импортировать как псевдоним, что означает, что оба класса могут иметь одно и то же имя, но там, где вы его используете, очевидно, должно быть разное:

import { MyComponent as OldComponent } from '../old/my-component'
import { MyComponent} from '../new/my-component'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...