javascript - 不能将 ng-bootstrap 与 Webpack 和 Angular2 一起使用

标签 javascript angular webpack ng-bootstrap

首先我安装并导入了NgbModule:

  • npm install --save @ng-bootstrap/ng-bootstrap
  • 从“@ng-bootstrap/ng-bootstrap”导入 {NgbModule}

此时,一切正常,我能够像 ng-bootstrap

之前那样运行我的应用程序

一旦我将 NgbModule 添加到我的 NgModuleimports 数组中,如下所述:

@NgModule({
    imports: [
        NgbModule, ....
    ],
    declarations: [AppComponent, ....],
    bootstrap: [AppComponent],
})

我无法使用 webpack-dev-server 运行 npm start,因为它喊道:

error

这是我的webpack.config.js:

module.exports = {
  entry: "./app/boot",
  output: {
    path: __dirname,
    filename: "./dist/bundle.js"
  },
  resolve: {
    extensions: ['', '.js', '.ts']
  },
  module: {
    loaders: [
      { test: /\.ts/,   loader: ["ts-loader"], exclude: /node_modules/ },
     ],
     preLoaders: [
      // All output '.js' files will have any sourcemaps re-processed by 'source-map-loader'.
      { test: /\.js$/, loader: "source-map-loader", exclude: ['node_modules', 'ext-*', 'lib', 'tools'] }
    ]
  },
  debug: true,
  devtool: 'source-map'
};

如有任何帮助和解释,我们将不胜感激!

提前致谢!

更新:

preLoaders 中删除 source-map-loader 的使用消除了错误,但在浏览器中没有 Typescript 源。

知道要做什么吗?为什么会这样?

最佳答案

看起来 webpack 在您的本地计算机文件中搜索 source-map-loader 而不是在您的项目中。 因此我的猜测是 npm install source-map-loader --save-dev 将不起作用。

当从您的本地 PC 而不是您的项目请求某个模块时,它可能是一个应该全局安装的模块。

尝试: npm install source-map-loader -g

关于javascript - 不能将 ng-bootstrap 与 Webpack 和 Angular2 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39305691/

相关文章:

angular - 当我在 Ionic 2 中导入未使用的附加项时会发生什么?

angular - @ngrx/router-store 对比@angular/router

javascript - 从 css 模块中排除一个文件并单独生成 webpack asset

typescript - TS2307 : Cannot find module '@/*' or its corresponding type declarations

javascript - 将文本与塞尔维亚西里尔字母相互转换

javascript - 使用多个问题切换是/否

javascript - 当 textarea 不为空时,如何在关闭页面之前警告用户?

javascript - AngularJS:如何创建一个模型来保存输入字段动态列表的数组?

javascript - Angular 2+ 中 setTimeout 的替代方案

javascript - 如何使用 webpack 保持我的 shebang 到位?