自定义角度飞镖组件包

时间:2015-11-05 19:13:57

标签: dart angular-dart dart-pub dart-html

我创建了一个我想要在我的主项目中使用的角度飞镖组件。我正在使用路径包来引用它。正在调用组件的构造函数(在dart文件中),但是我收到无法找到.css和.html文件的错误。它寻找它们的路径似乎存在,所以我不确定它为什么找不到它们。

我在我的代码中使用了其他自定义组件,但没有与它们关联的html或css文件,它们很好,似乎仅限于html和css文件。

以下是我的代码片段

test.dart位于test_component / lib / test_component /

library TestCom;

import 'package:angular/angular.dart';

@Component(
    selector: 'tester',
    templateUrl: 'test.html',
    cssUrl: 'test.css')
class TestComponent {
 String t = "this is the test component";

 TestComponent() {
    print("Test Component STARTED");
  }
}

test.html位于test_component / lib / test_component /

<h3>{{t}}</h3>

pubspec.yaml位于test_component

name: TestModule
dependencies:
  angular: "^1.1.2+2"
  browser: any
transformers:
- angular:
    html_files:
      - lib/test_component/test.html

main.dart位于main / src / main / dart / web

import 'package:TestModule/test_component/test.dart';

class MyAppModule extends Module {
  MyAppModule() {
    bind(TestComponent);
  }
}

index.html位于main / src / main / dart / web /

<tester></tester>

pubspec.yaml位于main / src / main / dart

name: main_package
dependencies:
  angular: "^1.1.2+2"
  browser: any
  shadow_dom: any
  json_object: any   
  bootjack: any
  crypto: any
  xml: "^2.3.2"
  TestModule:
    path: ../../../../test_component
transformers:
- angular:

运行pub get之后,在我的主项目的packages文件夹中,TestModule / test_component /存在test.css,test.dart和test.html。我不确定为什么当我运行它时,它找不到.html和.css文件。

这是我运行时在控制台中显示的内容

Observatory listening at http://127.0.0.1:54254/
Test Component STARTED
index.html:1 GET http://127.0.0.1:3030/packages/TestModule/test_component/test.css 404 (Not Found)
index.html:1 GET http://127.0.0.1:3030/packages/TestModule/test_component/test.html 404 (Not Found)
2 HTTP 404: <html><head><title>404 Not Found</title></head><body>File not found</body></html>

STACKTRACE:
null

1 个答案:

答案 0 :(得分:2)

试试这个

 name: TestModule
    dependencies:
      angular: "^1.1.2+2"
      browser: any
    transformers:
    - angular:
        html_files:
          - packages/TestModule/test_component/test.html

但是对于css文件,我认为你只需要将它们放在与组件的Dart文件相同的文件夹中。