Angular无法读取未定义

时间:2017-02-21 18:47:28

标签: javascript angular frontend

我很难安装angular2并使用BabelWebpack在本地设置它以重新实现角度组件中的简单Hello world应用,只是为了开始。< / p>

我目前遇到此运行时错误:

index.html:9 Uncaught TypeError: Cannot read property 'Version' of undefined如果你很好奇。

这是描述情况的性感形象。 Error Image

我试图找出这个错误发生的位置,结果发现它是有角度的(如果我错了,请纠正我)。

这一行确切地说是var VERSION=new _angular_core.Version(\"2.4.8\") ...

我能得到一些帮助吗?谢谢!!

<小时/>

app.component.js

import {Component} from '@angular/core';

@Component({
    selector: 'my-app',
    template: `
        <h1>Hello Angular 2</h1>
    `
}) export class AppComponent {};

app.module.js

import {NgModule} from '@angular/core';
import {BrowserModule} from '@angular/platform-browser';
import {AppComponent} from './app.component'

@NgModule({
    imports: [BrowserModule],
    declarations: [AppComponent],
    bootstrap: [AppComponent]
}) export class AppModule {};

main.js

import {platformBrowserDynamic} from '@angular/platform-browser-dynamic';
import {AppModule} from './app.module';

platformBrowserDynamic().bootstrapModule(AppModule);

index.js

require('!!script-loader!@angular/compiler/bundles/compiler.umd.min.js');
require('!!script-loader!@angular/core/bundles/core.umd.min.js');
require('!!script-loader!@angular/common/bundles/common.umd.min.js');
require('!!script-loader!@angular/platform-browser-dynamic/bundles/platform-browser-dynamic.umd.min.js');
require('!!script-loader!rxjs/bundles/Rx.min.js');
require('./main')

3 个答案:

答案 0 :(得分:6)

也许你可以使用Angular CLI开始你的第一个项目。它为您节省了必须设置整个开发环境的麻烦。 Angular团队提供了一个不错的设置。您可以通过运行&nbsp install -g @ angular / cli&#39;来安装它。

然后,您可以使用命令“新PROJECT_NAME”创建一个新项目&#39;并使用“服务”命令运行它。这真的就是它的全部内容:-)看看文档,让你在这里开始运行:https://github.com/angular/angular-cli

如果您对自己的项目充满信心,并希望自己动手使用构建配置(基于webpack!),请使用&#39; ng eject&#39;命令。

答案 1 :(得分:2)

所有角度包都应该是相同的版本。这意味着核心通用编译器等都应该是2.4.8。

问题在于我认为在Angular 2.2或2.3之前这个获取版本不存在。因此,如果您在2.2和@angular/core处设置@angular/common,那么@angular/common可能会使用@angular/core的旧版本@angular/core中不存在的功能1}}但是例如可能angular.core.getVersion()

答案 2 :(得分:1)

获得有角度的版本:

import * as angular2 from 'angular2/angular2';
console.log(angular2.version);

this MDN page