今天我访问了 materializecss 的 1.0 alpha 版本,我使用 Angular 和 Im 使用一些需要 jQuery 初始化的组件,如侧导航
文档说可以通过以下方式初始化它们:
var elem = document.querySelector('.sidenav');
var instance = new M.Sidenav(elem, options);
而不是我目前使用的jQuery方式:
$(document).ready(function(){
$('.sidenav').sidenav();
});
我怎样才能使它成为可能?什么是M?也许我需要这种新方法的例子......
首先,您需要在index.html
文件的顶部或angular-cli.json
文件中添加 CSS 和 JS 导入
之后,您需要声明一个全局变量
declare var M: any;
然后你可以使用它...
更详细地说:
angular-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 { ... }