为ASP.NET Core 2.0和Web包安装ngx引导程序(Angular 4.2.5)

为ASP.NET Core 2.0和Web包安装ngx引导程序(Angular 4.2.5),angular,webpack,asp.net-core,ngx-bootstrap,Angular,Webpack,Asp.net Core,Ngx Bootstrap,我尝试在一个ASP.NET Core 2.0项目中使用ngx引导,并使用aspnet预渲染和webpack。文档中没有关于此配置的信息 有人能告诉我一个指南或帮助我如何将这个包集成到以下配置中吗 我试图添加最新版本,但它开始抱怨包版本不兼容。当我根据错误消息更改package.json时,我现有的代码中断了 我想要实现的是保持当前的配置角度等,并使用引导包 myproject.json如下所示: "devDependencies": { "@angular/animations"

我尝试在一个ASP.NET Core 2.0项目中使用ngx引导,并使用aspnet预渲染和webpack。文档中没有关于此配置的信息

有人能告诉我一个指南或帮助我如何将这个包集成到以下配置中吗

我试图添加最新版本,但它开始抱怨包版本不兼容。当我根据错误消息更改package.json时,我现有的代码中断了

我想要实现的是保持当前的配置角度等,并使用引导包

myproject.json如下所示:

    "devDependencies": {
    "@angular/animations": "4.2.5",
    "@angular/common": "4.2.5",
    "@angular/compiler": "4.2.5",
    "@angular/compiler-cli": "4.2.5",
    "@angular/core": "4.2.5",
    "@angular/forms": "4.2.5",
    "@angular/http": "4.2.5",
    "@angular/platform-browser": "4.2.5",
    "@angular/platform-browser-dynamic": "4.2.5",
    "@angular/platform-server": "4.2.5",
    "@angular/router": "4.2.5",
    "@ngtools/webpack": "1.5.0",
    "@types/chai": "4.0.1",
    "@types/jasmine": "2.5.53",
    "@types/webpack-env": "1.13.0",
    "angular2-router-loader": "0.3.5",
    "angular2-template-loader": "0.6.2",
    "aspnet-prerendering": "^3.0.1",
    "aspnet-webpack": "^2.0.1",
    "awesome-typescript-loader": "3.2.1",
    "bootstrap": "3.3.7",
    "chai": "4.0.2",
    "css": "2.2.1",
    "css-loader": "0.28.4",
    "es6-shim": "0.35.3",
    "event-source-polyfill": "0.0.9",
    "expose-loader": "0.7.3",
    "extract-text-webpack-plugin": "2.1.2",
    "file-loader": "0.11.2",
    "html-loader": "0.4.5",
    "isomorphic-fetch": "2.2.1",
    "jasmine-core": "2.6.4",
    "jquery": "3.2.1",
    "json-loader": "0.5.4",
    "karma": "1.7.0",
    "karma-chai": "0.1.0",
    "karma-chrome-launcher": "2.2.0",
    "karma-cli": "1.0.1",
    "karma-jasmine": "1.1.0",
    "karma-webpack": "2.0.3",
    "preboot": "4.5.2",
    "raw-loader": "0.5.1",
    "reflect-metadata": "0.1.10",
    "rxjs": "5.4.2",
    "style-loader": "0.18.2",
    "to-string-loader": "1.1.5",
    "typescript": "2.4.1",
    "url-loader": "0.5.9",
    "webpack": "2.5.1",
    "webpack-hot-middleware": "2.18.2",
    "webpack-merge": "4.1.0",
    "zone.js": "0.8.12"
  },
  "dependencies": {
    "ngx-cookie": "^2.0.1"
  }

谢谢

我终于解决了。对于任何感兴趣的人,我都发表了一篇文章

@valorkin,如果您愿意,您可以在漂亮的项目中免费获取此示例作为ASP.NET核心指南:

在螺母壳中,以下是要点:

ngx引导安装步骤:

这只是关于客户端应用程序,与ASP.Net核心项目几乎没有任何关系。与cli生成的项目相比,唯一的区别在于它的文件夹结构和文件命名稍有不同

例如,package.json文件位于ASP.NET项目的根文件夹中,而不是angular应用程序的根文件夹中,或者Visual Studio方法在ClientApp结构下没有src文件夹。app.module文件也分为多个块,用于管理app.shared.module.ts中的共享代码、app.module.browser.ts中的浏览器特定代码以及app.module.server.ts文件中的服务器特定代码。等等

启动Visual Studio 2017并从ASP.Net核心Web应用程序模板创建新项目。在“模板选项”中,选择“角度”。 将ngx引导添加到package.json,它位于项目根目录的文件夹中。要了解有关npm包和package.json文件的更多信息,请参阅。 如果引导程序包尚未包含,但它已包含在此模板中,请也添加它,因为它是先决条件。 由于此项目模板包含现成的webpack集成,它将自动找到我们新添加的包,因此我们不需要修改webpack配置文件来包含它们。这太酷了

"bootstrap": "3.3.7",
"ngx-bootstrap": "2.0.0-rc.0",
"css": "2.2.1",
导入要在app.module.shared.ts~\ClientApp\app\components\app.module.shared.ts中使用的模块

在同一文件中,通过调用其forRoot函数将上述导入的模块添加到@NgModule的imports集合:

imports: [
    CommonModule,
    HttpModule,
    FormsModule,

    // Bootstrap ----------------------------
        AlertModule.forRoot(),
    //AccordionModule.forRoot(),
    //ButtonsModule.forRoot(),
    //...
    //TooltipModule.forRoot()
    //---------------------------------------

    //...

    RouterModule.forRoot([
        { path: '', redirectTo: 'home', pathMatch: 'full' },
        { path: 'home', component: HomeComponent },
        { path: 'counter', component: CounterComponent },
        { path: 'fetch-data', component: FetchDataComponent },
        { path: '**', redirectTo: 'home' }
])
开始在组件中使用它们。 例如,在~\ClientApp\app\components\home\home.component.html文件下的主组件模板中添加一个标记

注意,您不需要在组件ts文件中导入引导模块


我没有写过这样的文件yetHi@valorkin,谢谢你的回答。你能告诉我我的环境是否得到支持吗?如果是,正确的方法是什么?我尝试了很多方法,结果总是出现某种无提供者错误。我想我犯了s.g.的错误,但是如果我们有一个向导的话,克服它会容易得多。谢谢,太棒了!实际上,你可以在我们的自述中为你的答案添加链接,这样ppl就可以找到它;
imports: [
    CommonModule,
    HttpModule,
    FormsModule,

    // Bootstrap ----------------------------
        AlertModule.forRoot(),
    //AccordionModule.forRoot(),
    //ButtonsModule.forRoot(),
    //...
    //TooltipModule.forRoot()
    //---------------------------------------

    //...

    RouterModule.forRoot([
        { path: '', redirectTo: 'home', pathMatch: 'full' },
        { path: 'home', component: HomeComponent },
        { path: 'counter', component: CounterComponent },
        { path: 'fetch-data', component: FetchDataComponent },
        { path: '**', redirectTo: 'home' }
])
    <alert type="success" dismissible="true"><br />
        <b>Congratulations</b><br />, ngx-bootstrap package was loaded successfully. This alert is shown by the package. Great!<br />
        Now click the <b>[x]</b> button on right side to close this alert.
    </alert>