Angular-cli + primeng require未定义

时间:2016-09-15 15:03:03

标签: angular-cli primeng

我正在使用angular-cli@1.0.0-beta.14(webpack)和primeng@1.0.0-beta.15。

在创建一个新的angular-cli项目后,我做了一些更改以添加primeng:

package.json上的

1:

"primeng": "^1.0.0-beta.15"

2 on angular-cli.json:

"styles": [ "styles.css", "../node_modules/primeng/resources/themes/omega/theme.css", "../node_modules/font-awesome/css/font-awesome.min.css", "../node_modules/primeng/resources/primeng.min.css" ],
"scripts": [ "../node_modules/primeng/primeng.js" ]
app.module.ts上的

3:

@NgModule({ declarations: [ AppComponent ],
imports: [ BrowserModule, FormsModule, HttpModule, PanelModule ],
providers: [], bootstrap: [AppComponent] }) export class AppModule { }

问题:

  

未捕获的ReferenceError:require未定义意外值   由'AppModule'模块导入的'undefined'

任何有助于将primeng添加到angular-cli的帮助......我们会很棒! :)

1 个答案:

答案 0 :(得分:7)

所以只是你所拥有的一切看起来都不错。

问题在于你试图将primeng作为脚本标记(适用于像jQuery这样的全局库)。但是,由于primeng部署了模块,您只需将其导入模块中,然后将其提供给您的NgModule,如下所示:

import { ButtonModule } from 'primeng/components/button/button';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    FormsModule,
    HttpModule,
    ButtonModule
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

然后你还想从angular-cli.json中删除对primeng.js的引用