angularjs - 如何在使用 angular cli 创建的项目中集成 angular2-materialize

标签 angularjs angular materialize

我想在我的项目中使用 Materialize CSS 框架。 我使用 ng new BLABLA

Angular CLI 上建立了一个项目

之后,我按照 this 中的步骤进行操作指导。

但是,如果我使用 ng serve 启动项目,我会在浏览器中收到此错误:

TypeError: undefined is not an object (evaluating 'jQuery.easing.swing') 

我的 angular-cli.json

{
  "project": {
    "version": "1.0.0-beta.15",
    "name": "blabla"
  },
  "apps": [
    {
      "root": "src",
      "outDir": "dist",
      "assets": "assets",
      "index": "index.html",
      "main": "main.ts",
      "test": "test.ts",
      "tsconfig": "tsconfig.json",
      "prefix": "app",
      "mobile": false,
      "styles": [
        "styles.css"
      ],
      "scripts": [
        "../node_modules/jquery/dist/jquery.js",
        "../node_modules/materialize-css/dist/js/materialize.js"
      ],
      "environments": {
        "source": "environments/environment.ts",
        "dev": "environments/environment.ts",
        "prod": "environments/environment.prod.ts"
      }
    }
  ],
  "addons": [],
  "packages": [],
  "e2e": {
    "protractor": {
      "config": "./protractor.conf.js"
    }
  },
  "test": {
    "karma": {
      "config": "./karma.conf.js"
    }
  },
  "defaults": {
    "styleExt": "css",
    "prefixInterfaces": false
  }
}

应用程序模块.ts

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';

import { MaterializeModule } from 'angular2-materialize';
import "materialize-css";
import { AppComponent } from './app.component';

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

最佳答案

您需要做的如下:

将这一行添加到您的全局 css 文件中: @import "../node_modules/materialize-css/dist/css/materialize.css";

并删除这一行 导入“materialize-css”; 来自 app.module.ts

如果你在任何情况下运行它,也要确保你安装了正确的 jquery 版本: npm install jquery@^2.2.4 --保存

这样做对我有用。 [祝你好运]

关于angularjs - 如何在使用 angular cli 创建的项目中集成 angular2-materialize,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39675673/

相关文章:

Materialise 创建并打开模态

javascript - 在页面上多次使用的 react 组件上动态渲染唯一的按钮

javascript - 多米诺 Angular 通用 : Getting Right-hand side of 'instanceof' is not an object

angularjs - Angular 过滤器和 Angular2 管道之间的区别?

jquery - 在 Angular2 组件中创建的 jQueryUI 元素样式

javascript - AngularJS 注销和重新登录

javascript - MaterializeCSS 轮播不工作

javascript - AngularJS:将服务注入(inject) HTTP 拦截器(循环依赖)

angularjs - 未安装 Angular 文件保护程序

javascript - 在 Angular 中显示 CollectionFS 图像