next.materialize初始化没有jQuery

时间:2017-11-14 13:11:14

标签: angular materialize

今天我访问了materializecss的1.0 alpha版本,我正在使用Angular和Im使用一些需要jQuery初始化的组件,如Side Nav

Doc说可以用以下方式初始化它们:

  var elem = document.querySelector('.sidenav');
  var instance = new M.Sidenav(elem, options);

而不是我现在使用的jQuery方式:

  $(document).ready(function(){
    $('.sidenav').sidenav();
  });

我怎样才有可能?什么是M?也许我需要一个这种新方式的例子......

1 个答案:

答案 0 :(得分:2)

首先,您需要在index.html文件的顶部或angular-cli.json文件中添加CSS和JS导入

之后,您需要声明一个全局变量

declare var M: any;

然后你可以使用它......

更详细:

<强>角cli.json

"styles": [
  "../node_modules/PATH/TO/MATERIALIZE.css"
],
"scripts": [
  "../node_modules/PATH/TO/MATERIALIZE.js"
],

在组件内部

// Imports
import { ... } from '...';

// Here you declare the M
declare var M: any;

// Then you have the component
@Component({...})
export class ExampleComponent implements onInit { ... }