Создать пакет дротиков для AngularDart - PullRequest
0 голосов
/ 26 октября 2018

Использование: dart 2.0.0

Как вы создаете компоненты для AngularDart?

Я без везения посмотрел на https://github.com/dart-lang/angular_components

Я сделалследующие шаги:

  1. stagehand package-simple
  2. добавлено export в файл dart с library <packageName>;
  3. ссылка на пакет в pubspec.yaml

    Вы должны зависеть от build_runner в pubspec.yaml.dev_dependencies: build_runner:> = 0.8.10 <2.0.0 У вас должна быть зависимость от <code>build_web_compilers в pubspec.yaml.dev_dependencies: build_web_compilers:> = 0.3.6 <0.5.0 </p>

    Пожалуйста, проверьте следующий импорт: `import 'package: <...> template.dart' '

Я пытался собрать пакет с помощью:

 webdev build
webdev could not run for this project.
You must have a dependency on `build_runner` in `pubspec.yaml`.
# pubspec.yaml
dev_dependencies:
  build_runner: >=0.8.10 <2.0.0
You must have a dependency on `build_web_compilers` in `pubspec.yaml`.
# pubspec.yaml
dev_dependencies:
  build_web_compilers: >=0.3.6 <0.5.0

Примечание. Используя простой класс, он работает, но не с веб-компонентами:

Это работает:

class Awesome {
  bool get isAwesome => true;
}

Это не:

import 'package:angular/angular.dart';

@Component(
  selector: 'my-card',
  templateUrl: 'my_card.html',
  styleUrls: ['my_card.css'],
  directives: [coreDirectives],
  // pipes: [commonPipes],
)
class MyCard {
  var cardstring = 'My Card - string';
}

При любом его использовании:

<my-card></my-card>

1 Ответ

0 голосов
/ 26 октября 2018

Создайте проект Dart с pubspec.yaml (имя, ограничения SDK, угловая зависимость).
Создайте файл компонента в lib/my_component.dart и lib/my_component.html.Вот и все.
В качестве альтернативы вы можете поместить компонент в lib/src/my_component.* с помощью файла, подобного lib/my_components.dart

export 'src/my_component.dart';

В своем проекте приложения, где вы хотите использовать пакет компонента, добавьте зависимость к вашемупакет компонентов.

dependencies:
  angular: ^5.0.0
  my_components: ^0.1.0 # requires the package to be published to pub.dartlang.ort
  # alternatively (without publishing
  my_components:
    path: ../my_components
  # or if checked in to GitHub
  my_components:
    git: git://github.com/myaccount/my_components.git

См. также https://www.dartlang.org/tools/pub/dependencies

Затем вы используете компонент, импортируя его

import 'package:my_components/my_components.dart';

@Component(
  selector: ....
  directives: [MyComponent],
  ...
)
class AppComponent {}

и добавляя его в AppComponent (или любые другие компоненты).) HTML как

<my-component></my-component>
...