Angular 2使用ng require而不是import

时间:2017-06-12 21:47:10

标签: javascript angular angular2-routing

从Angular 1世界进入Angular 2并试图更好地理解Angular 2的路由选项。找到了一个体面的教程,他们在导入时使用如下:

import { ModuleWithProviders }  from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
routes.js中的

(尽管教程使用的是我不喜欢的typescript(.ts))。

那就是说,如果我严格尝试使用导入而不是我最初使用的导入(注意:我的路径.js文件中没有显示@ angular / router):

var ng = require('@angular/core');

所以我喜欢他们正在做的事情的前提,并试图想出如何实现这一点。

我的root index.js看起来像:

require('core-js/client/shim');
require('zone.js/dist/zone');

require('@angular/common');
require('rxjs');

require('bootstrap')
require('./index.scss');

var ngCore = require('@angular/core');
var ngPbd = require('@angular/platform-browser-dynamic');
var AppModule = require('./app');

if (process.env.NODE_ENV === 'production') {
    ngCore.enableProdMode();
} else {
    Error['stackTraceLimit'] = Infinity; // eslint-disable-line dot-notation
    require('zone.js/dist/long-stack-trace-zone');
}

ngPbd.platformBrowserDynamic().bootstrapModule(AppModule);

然后我的app的index.js是:

var bootstrap = require('bootstrap');
var ng = require('@angular/core');
var ngPlatformBrowser = require('@angular/platform-browser');
var uiRouter = require('ui-router-ng2');
var fa = require('font-awesome-loader');

var myRoutes = require('./routes');
var mainComponent = require('./main');

module.exports = uiRouter.UIRouterModule({
    imports: [
        ngPlatformBrowser.BrowserModule
    ],
    declarations: [
        mainComponent
    ],
    providers: [
        uiRouter.provideUIRouter({ configClass: myRoutes.MyUIRouterConfig })
    ],
    states: myRoutes.STATES,
    bootstrap: [uiRouter.UIView]
})(
    ng.Class({
        constructor: function() {}
    })
);

有什么建议和帮助让我更好地了解这一点?这只是打字稿吗?

非常感谢。

0 个答案:

没有答案