【问题标题】:Using materialize in aurelia在 aurelia 中使用物化
【发布时间】:2016-07-14 10:39:30
【问题描述】:

我一直在尝试让 materialize-css 框架与 Aurelia 一起工作。我正在使用带有框架的 Typescript,并通过带有“gulp watch”的 cmd 在 Windows 8 上运行服务器。到目前为止,我已按照提供的说明尝试使用 aurelia-materialize 桥接器。但是,按照这些步骤操作后,我使用 chrome 获得了以下控制台输出: console error

cmd 没有错误。这些是 main.ts 和 index 文件的内容,它们是骨架打字稿,顶部有物化桥,无需进一步修改: The image on the left is main.ts, the image on the right is index.html

可以选择将具体化 css 和 js 导入添加到 index.html 文件中,但我不知道如何在需要它们的组件上调用初始化函数,例如滑块。任何帮助或替代方法将不胜感激。

【问题讨论】:

  • stackoverflow.com/questions/33574208/… 解释了如何在没有插件的情况下导入它。对此的插件将是矫枉过正的imo。
  • @randy 我已经尝试过用户在该问题中的建议,但是这一行: import {materialize} from 'materialize-css';失败并出现错误:TS2307: Cannot find module 'materialize-css' 但是,在 jspm_packages 文件夹中,materialize 已正确安装(或者看起来如此),并且在包 json 中我有 materialize 依赖项。
  • 您可以使用与引导程序完全相同的方式使用物化。细看骨架,你会发现如果你安装materialize,它就在你的config.js中,就像bootstrap一样。用物化的东西替换引导程序提供的所有东西。实际上这只是css和javascript库的导入。配置可能会说'dogfalo/materialize ',所以导入那个包。
  • @randy 感谢您的帮助,到目前为止,我可以在全球范围内看到具体化样式。但是,我仍然无法初始化滑块或下拉菜单等元素,这是我主要关心的问题。
  • 你确定js文件导入正确吗?也许你需要一个.d.ts file?

标签: aurelia materialize


【解决方案1】:

将 CSS 框架与 Aurelia 集成的最佳策略是在必要时创建自定义属性。下面是一个如何为折叠项创建自定义属性的示例:

collapsibleCustomAttribute.js

import 'materialize-css'; // the loads the materialize library

@inject(Element)
export class CollapsibleCustomAttribute {

    constructor(element) {
        this.element = $(element);
    }

    attached() {
        this.element.collapsible({
          accordion: false
        });
    }
}

app.html

<require from="./collapsibleCustomAttribute">
<ul class="collapsible" collapsible>
    <li>
        <div class="collapsible-header"><i class="material-icons">filter_drama</i>First</div>
        <div class="collapsible-body"><p>Lorem ipsum dolor sit amet.</p></div>
    </li>
    <li>
        <div class="collapsible-header"><i class="material-icons">place</i>Second</div>
        <div class="collapsible-body"><p>Lorem ipsum dolor sit amet.</p></div>
    </li>
    <li>
        <div class="collapsible-header"><i class="material-icons">whatshot</i>Third</div>
        <div class="collapsible-body"><p>Lorem ipsum dolor sit amet.</p></div>
    </li>
</ul>

【讨论】:

猜你喜欢
  • 2016-11-25
  • 1970-01-01
  • 1970-01-01
  • 2022-07-11
  • 1970-01-01
  • 2020-03-18
  • 2015-04-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多