Angular2 rc4 Bootstrap

标签 angular angular2-routing

我刚刚将我的 angular2 应用程序从 RC1 更新到 RC4。我完全按照指南进行操作,但由于某些奇怪的原因,我的 main.ts 文件中的应用程序引导无法正常工作。我的代码是:

import  { bootstrap } from '@angular/platform-browser-dynamic';

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

import { APP_ROUTER_PROVIDERS } from './service/routes.service';

import { AppComponent }   from './components/app.component';

enableProdMode();

bootstrap(AppComponent, [
    APP_ROUTER_PROVIDERS,
]); 

我收到错误消息:

[ts] Module '"/Users/bradbeighton/Documents/Dev/coffeezan/node_modules/@angular/platform-browser-dynamic/index"' has no exported member 'bootstrap'. import bootstrap

"@angular/common": "2.0.0-rc.4",
"@angular/compiler": "2.0.0-rc.4",
"@angular/core": "2.0.0-rc.4",
"@angular/forms": "0.2.0",
"@angular/http": "2.0.0-rc.4",
"@angular/platform-browser": "2.0.0-rc.4",
"@angular/platform-browser-dynamic": "2.0.0-rc.4",
"@angular/router": "3.0.0-beta.1",
"@angular/router-deprecated": "2.0.0-rc.2",
"@angular/upgrade": "2.0.0-rc.4",

我安装的包与 Angular 建议的完全相同。所以我很困惑为什么找不到 Bootstrap 模块?

我还遇到了另一个问题,即按照他们在教程中建议的方式设置路由。

import { provideRouter, RouterConfig }  from '@angular/router';

import { HomeComponent } from '../components/home.component/home.component';';

const routes: RouterConfig = [
  { path: '/home', component: HomeComponent },
];

export const APP_ROUTER_PROVIDERS = [
  provideRouter(routes)
]; 

不知道是我装傻了还是安装错了包?请帮助??

编辑:

我的 systemjs.config 文件非常标准,但它在这里:

var isPublic = typeof window != "undefined";

/**
 * System configuration for Angular 2 samples
 * Adjust as necessary for your application needs.
 */
(function(global) {
    // map tells the System loader where to look for things
    var map = {
        'app':                        'client', // 'dist',
        '@angular':                   (isPublic)? '@angular' : 'node_modules/@angular',
        'angular2-in-memory-web-api': (isPublic)? 'angular2-in-memory-web-api' : 'node_modules/angular2-in-memory-web-api',
        'rxjs':                       (isPublic)? 'rxjs' : 'node_modules/rxjs',
        'ng-semantic':                (isPublic)? 'ng-semantic' : 'node_modules/ng-semantic'
    };
    // packages tells the System loader how to load when no filename and/or no extension
    var packages = {
        'app':                        { main: 'main.js',  defaultExtension: 'js' },
        'rxjs':                       { defaultExtension: 'js' },
        'angular2-in-memory-web-api': { main: 'index.js', defaultExtension: 'js' },
        'ng-semantic':                { main: 'ng-semantic', defaultExtension: 'js' }
    };
    var ngPackageNames = [
        'common',
        'compiler',
        'core',
        'http',
        'platform-browser',
        'platform-browser-dynamic',
        'router',
        'router-deprecated',
        'upgrade'
    ];
    // Add package entries for angular packages
    ngPackageNames.forEach(function(pkgName) {
        packages['@angular/'+pkgName] = { main: pkgName + '.umd.js', defaultExtension: 'js' };
    });
    var config = {
        map: map,
        packages: packages
    };
    System.config(config);
})(this);

最佳答案

引用.umd.js 文件时,您需要使用bundles。请引用以下 block -

  function packUmd(pkgName) {
    packages['@angular/'+pkgName] = { main: '/bundles/' + pkgName + '.umd.js', defaultExtension: 'js' };
  }

看看这是否有帮助。

关于Angular2 rc4 Bootstrap ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38283830/

相关文章:

angular - Mat-tab 点击事件

angular - 无法绑定(bind)到 'ngForOf' 因为它不是 'div' 的已知属性

Angular 路由自动重定向到默认路径

javascript - 对于较新的 Angular 4 项目,使用 Angular-CLI 或仍然使用 webpack

angular2-routing - 如何在 ngx-admin nebular 和 angular 5 中向路由选项卡集组件添加参数

javascript - 如何使用 javascript、使用路由器和辅助 socket 重定向 Angular2 应用程序

post - 在 Angular2 中读取请求正文

tomcat - 将angular2项目部署到tomcat服务器后刷新问题?

javascript - 找不到主要导出来加载 Angular 2

angular - 错误 : (SystemJS) Can't resolve all parameters for ActivatedRoute: (? , ?, ?, ?, ?, ?, ?, ?)