我想在我的项目中使用Materialize CSS
框架。
我使用Angular CLI
ng new BLABLA
项目
之后,我已按照this指南中的步骤进行操作。
但是,如果我使用ng serve
启动项目,我会在浏览器中收到此错误:
TypeError: undefined is not an object (evaluating 'jQuery.easing.swing')
my 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
}
}
app.module.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 { }
答案 0 :(得分:7)
您需要做的事情如下:
将此行添加到您的全局css文件中: @import" ../ node_modules / materialize-css / dist / css / materialize.css&#34 ;;
并删除此行 导入" materialize-css&#34 ;; 来自app.module.ts
如果你在任何情况下运行它,还要确保你更好地安装了正确的jquery版本: npm install jquery@^2.2.4 --save
这样做对我有用。 [祝你好运]
答案 1 :(得分:0)
我还发现,如果你在apps [0] .scripts和apps [0]的条目中运行npm rebuild,那么angular-cli.json everthing的属性就可以了,你不必将@import添加到styles.css中。
我在Mike Lynch的网站http://mikelynchgames.com/software-development/setting-up-and-using-angular-2-cli/
上找到了这些信息答案 2 :(得分:0)
或者,如果您想使用原始sass
而不是DIST
版本的materialzie css,因为您可能需要覆盖颜色和其他变量,您可以使用此...
在这样的主要styles.sass文件中导入实现css。
// override fonts path to prevent build errors (or use resolve-url loader)
$roboto-font-path: "../node_modules/materialize-css/fonts/roboto/"
// optionally override color variables eg: ...
$primary-color: color("materialize-purple");
@import "~materialize-css/sass/materialize"