1

我无法让 Mithril 渲染任何 Bootstrap 表。我有使用以下(基本)代码渲染得很好的 Bootstrap 按钮元素:

 var TableModule = {
      view: function(){
          return [
             m("button.btn btn-lg btn-primary", { onclick: function () { alert("derr"); } }, "Teh Button"),
             m("table.table table-striped",
                  m("tr", [m("td", "herp"), m("td", "derp")]))
          ]
      }
  } 
  m.module(document.getElementById("test4"), TableModule);

如果我使用以下方法对表格进行硬编码:

<table class="table table-striped"><tr><td>herp</td><td>derp</td></tr></table>

(这与上面的秘银代码产生的完全相同的 html)我得到以下信息: 在此处输入图像描述

想法、想法、建议?任何和所有的欢迎。

4

3 回答 3

3

在 Mithril 中添加静态 CSS 类时,建议您使用.CSS 选择器语法,请参阅本

所以你的代码应该是:

var TableModule = {
          view: function(){
              return [
                 m("button.btn.btn-lg.btn-primary", { onclick: function () { alert("derr"); } }, "Teh Button"),
                 m("table.table.table-striped",
                      m("tr", [m("td", "herp"), m("td", "derp")]))
              ]
          }
      }

m.mount(document.getElementById("test4"), TableModule);

@ciscoheat 的其他评论也是有效的。您应该使用m.mountm.route在较新版本的 Mithril 中。

于 2015-11-30T01:35:55.210 回答
2

它可能非常简单,您需要调用m.mount而不是m.module. 模块也是 0.2 之前的概念,现在使用的是组件。(差别不大,但值得一读:http: //mithril.js.org/mithril.component.html

编辑:m尝试在调用中的类之间添加点。button.btn.btn-lg.btn-primary例如。

于 2015-11-27T22:20:19.883 回答
0

您需要将 TR 包装在 TBODY 中。这似乎是由 Bootstrap 自动完成的,但在使用 v-nodes 和 m-helper 时不会。

于 2016-04-23T16:09:22.977 回答