草庐IT

javascript - 如何在 Mithril.js 中叠加弹出 View ?

作为深入学习基本JS编程(在最新浏览器上)的实践练习,我正在构建一个SPA来维护客户记录。我使用的唯一外部库是Mithril.jsMVC。到目前为止,我已经从我的数据库中获得了一个包含实时数据的TableView,其中包括每条记录的编辑、合并和删除按钮。编辑已完成并且运行良好,使用内联“表单”并保存/取消即可。我现在正在尝试实现删除和合并,这两者都需要在执行操作之前进行弹出确认,这就是我遇到的问题。我确切地知道在桌面GUI环境中我会做什么,所以障碍可能是我对浏览器前端的了解比对Mithril本身更不了解。理想情况下,我想创建一个独立的、可重用的“弹出”组件来表示弹出窗口,但我看不出我应

javascript - 在 Mithril 中单击第一个按钮时未运行 onclick 事件

为什么在像inthisfiddle?这样的输入中输入了一些文本后第一次没有调用“点击”回调varapp={};app.controller=function(){this.data=m.prop("");this.click=function(){alert("buttonclicked");};};app.view=function(ctrl){returnm("html",[m("body",[m("div",[m("p",ctrl.data()),m("input[type=text]",{onchange:m.withAttr("value",ctrl.data)}),m("b

javascript - 在 Mithril JS 中等待 AJAX 请求时如何显示微调器?

我在一个项目中使用MithrilJS,但我无法准确理解如何连接到Ajax生命周期。就像我有一个Ajax请求需要一段时间,我想显示一个微调器。非常基本,但我似乎无法弄清楚这是怎么发生的。我想为微调器使用与Ajax请求正在寻找的内容相同的容器。这是我的设置:varThing=function(data){varp=m.prop;this.title=p(data.title);this.timestamp=p(moment.unix(data.timestamp));}Thing.list=function(options){m.request({method:"GET",url:"/th

如何验证Mithril.js组件的HTML是否已在单位测试中正确呈现?

我正在尝试测试mithril.js组件的输出,以编程验证它们的预期。这样做的最好方法是什么?我正在使用茉莉测试框架。我一直在寻找一个可以使用Mithril组件的库,并可以轻松地验证它具有与孩子一样多的其他元素,并且它们具有一套属性。本质上,我正在寻找类似的东西酶与密特里尔一起使用。当然,我希望与代码的实现尽可能地脱钩。我看着图书馆米特里尔-Query,这可以通过CSS选择器验证元素的存在,但是我遇到了不适用于复合选择器的问题,并且语法在视觉上并不直观。我也想知道是否还有其他选择。看答案你可以尝试Mithril节点渲染结合您喜欢的HTML断言工具。