Angularjs2中的自定义组件问题

时间:2016-10-23 06:28:35

标签: angularjs angular angularjs-directive

我正在尝试学习Angularjs2并制作我的第一个应用程序,但它没有正常工作,也没有显示任何错误。我已经制作了#34; my-app"组件有一些html" Angular 2 First App这是我的组件",这个工作正常,但当我创建名为" my-component&#34的新组件时;用文字"嗨,我是{{name}}"它没有在浏览器中显示。

此外,当我尝试删除文本表单时,我的应用程序"像:

文字是:" Angular 2"所以它显示了我以前的文字是" Angular 2 First App"

请在下面的代码中检查我做错了什么:

的index.html:

<!doctype>
<html>
<head>
    <base href="/angular2_project/">
    <title>Angular 2</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- Load libraries -->
    <!-- IE required polyfills, in this exact order -->
    <script src="node_modules/es6-shim/es6-shim.min.js"></script>
    <script src="node_modules/systemjs/dist/system-polyfills.js"></script>
    <script src="node_modules/angular2/es6/dev/src/testing/shims_for_IE.js"></script>
    <script src="node_modules/angular2/bundles/angular2-polyfills.js"></script>
    <script src="node_modules/systemjs/dist/system.src.js"></script>
    <script src="node_modules/rxjs/bundles/Rx.js"></script>
    <script src="node_modules/angular2/bundles/angular2.js"></script>
    <script src="node_modules/angular2/bundles/router.dev.js"></script>
    <script src="node_modules/angular2/bundles/http.js"></script>


    <link rel="stylesheet" href="src/css/app.css">
</head>
<body>
<my-app>Loading...</my-app>

<script>
    System.config({
        packages: {
            app: {
                format: 'register',
                defaultExtension: 'js'
            }
        }
    });
    System.import('app/boot')
            .then(null, console.error.bind(console));
</script>
</body>
</html>

boot.ts:

import {bootstrap} from 'angular2/platform/browser';
import {AppComponent} from "./app.component";

bootstrap(AppComponent);

app.component.ts:

import {Component} from 'angular2/core';
import {MyComponentComponent} from './my-component.component';

@Component({
    selector: 'my-app',
    template: `
        <h1>Angular 2 First App</h1>
        <h2>Here is my component</h2>
        <my-component></my-component>
    `,
    directives: [MyComponentComponent],
})
export class AppComponent {

}

MY-component.component.ts:

import {Component} from 'angular2/core';

@Component({
    selector: 'my-component',
    template: `
        Hi, I am {{name}}
    `,
})

export class MyComponentComponent {
    name = 'Ovais';
}

0 个答案:

没有答案