Я начал изучать Angular и обнаружил, что структура каталогов у них разная. Предположим, я использую Angular 2.
Проект 1 образец компонента имеет эту строку:
import {Component} from 'angular2/core';
но в некоторых он заменен на
import { Component } from '@angular/core';
Кроме того, у некоторых файл component.ts
находится в project/app/component.ts
, а в некоторых проектах структура похожа на project/src/app.component.ts
.
Таких изменений гораздо больше. Что именно происходит?
import {Component} from 'angular2/core';
Это использовалось в более ранних версиях Angular, когда он был представлен еще в 2014 году. Следовательно, он называется angular2.
С развитием angular (разные версии) Angular8 является последним. Он импортируется как import { Component } from '@angular/core';
.
Вам нужно следовать последней версии, поэтому более поздняя версия является правильной.
Чтобы увидеть, что изменилось за прошедший период времени, вы можете прочитать the changelog
.
import {Component} from 'angular2/core';
Этот способ импорта использовался в более ранней версии Angular (некоторые называют его Angular2, но это просто Angular).
Но позже, когда фреймворк стал стабильным, его переименовали в @angular/core. Итак, в настоящее время у вас есть оператор импорта, как показано ниже:
import {Component} from '@angular/core';
То же самое и со структурой папок.
Раньше было project/app/component.ts
, а теперь идет project/app/app.component.ts
.
Если вы все еще в замешательстве, вы можете создать пример углового приложения и увидеть его самостоятельно. Вы можете создать образец приложения, выполнив команду ng new my-app
, при условии, что вы установили все зависимости и настроили среду.
Большое спасибо, Акаша :)
Добро пожаловать. Надеюсь, мой ответ помог вам. P.S. Если это действительно так, не могли бы вы отметить это как принятый ответ?
import { Component } from '@angular/core'
здесь правильный синтаксис.@angular/core
на самом деле является одним из основных необходимых пакетов.