问题标签 [mithril.js]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mithril.js - 如何在 Mithril 中集成自定义上下文菜单
我正在尝试将自定义上下文菜单添加到页面中的某些元素,并在包含表格的视图中这样做。上下文菜单附加到名称为“S”的表头:
要在按下转义键或用户用鼠标单击页面中的某个位置后关闭上下文菜单,此函数通过 config 属性附加到元素:
行为是不可预知的:如果表为空,自定义上下文菜单会按预期显示并隐藏。如果表格已填充,则会显示默认的上下文菜单。
使用调试器和一些断点并没有让我了解正在发生的事情,除了有时逐步运行调试器会调出自定义上下文菜单。所以我认为这与 eventListener 和 Mithrils 绘制系统之间的竞争条件有关。
有没有人有自定义上下文菜单的经验,可以给我一些例子吗?
非常感谢,斯特凡
编辑: 关于 Barneys 关于 m.startComputation() 的评论,我将代码更改为以下内容:
以及onContextMenu的实现函数:
现在这工作没有问题。巴尼,如果你能确认这是一种可行的方法,我会把它作为答案发布。
谢谢,斯特凡
mithril.js - m.request:使用包含冒号的 URL
我有一个这样的 m.request 调用:
现在 m.request 调用
并尝试用 data[name] 替换所有 ':[name]' 部分,这会导致 'undefined' 因为 data 不包含任何键。数据只是 XHR 请求的数据对象。
有没有办法禁止这种默认行为?
谢谢,斯特凡
PS:我在这里而不是在秘银邮件列表中询问,因为由于无法理解的原因我无法在那里发布。也许有人可以给我一个提示。
mithril.js - 如何使用 Mithril JS 制作同构 JavaScript 应用程序
我希望能够使用服务器上的 Mithril JS 框架呈现 javascript 模板,以进行 SEO 和首次加载,并让它们在浏览器中运行。
mithril.js - 使用 mithril.js 嵌套组件
我正在尝试将一些嵌套组件组合在一起以组装更大的页面。使用临时步骤来创建视图似乎有点过头了,但这只是将要组合在一起的更多组件的一部分。除此之外,它还很好地概述了正在发生的事情。但是我没有正确地做到这一点。
这是一个代码示例
这是一个不工作的变体 var2 的小提琴:http: //jsfiddle.net/1f7uauav/
错误信息是:
要查看有效的 var1,请删除小提琴中所示的注释(第 6、9、42 行)和第 45 和 46 行的注释。现在您可以看到所需的结果,但是这样我不能在其他组件中使用 MyApp。
那么,var2 中的这段代码有什么问题呢?
谢谢,斯特凡
html - 如何在 Mithril 中将字符串转换为 HTML 元素?
假设我有一个字符串<span class="msg">Text goes here</span>
。我需要将此字符串用作网页中的 HTML 元素。关于如何做的任何想法?
javascript - 如何用等效的秘银替换 jquery?
就像是 :
像......这是不正确的:
这甚至是正确的方法吗?在尝试从 jquery 转换之前,我应该建立控制器和模型吗?
更多细节:
我正在尝试重写connect
PeerJS 示例中的函数: https ://github.com/peers/peerjs/blob/master/examples/chat.html
mithril.js - 方法 m() 和 m.render() 有什么区别? m.render() 总是需要的?
m()
使virtualDom
?
m.render()
使realDom
?
那意味着m.render()
总是需要?
javascript - 如何使用 Mithril 的 m.request 从服务器加载数据?
我想将 json 文件的块存储到数组中。这是我当前的代码,在控制器 (ctrl) 中:
javascript - Polymer 1.0 和外部 DOM 操作库
我想知道如何在通过 jQuery 或虚拟 DOM 创建后修改 Polymer 1.0 标签。
我正在尝试使用 Mithril.js 的 Polymer 1.0。Polymer 0.5.5 具有 Shadow DOM,其标签文字和内部结构(在 Chrome 的检查器上)几乎相同。但是 1.0 使用了 shady DOM,它作为 HTML 模板工作。
资源:
聚合物 0.5.5 检查员的结果:
检查员的聚合物 1.0 结果:
例如,像这样执行 jQuery 命令:
它适用于 0.5.5(它显示正确的标签),但会破坏 1.0(内部标签已经变成了只是标签)。这种新行为不利于通过其他 DOM 操作库操作 Polymer 的自定义标签(起初,我在玩 Mithril.js 时遇到了这个问题)。而且我找不到任何 API 来重新初始化内部标签。
有没有什么好的解决方案可以在创建后修改 Polymer 1.0 标签以支持虚拟 DOM 或 jQuery?
更新(2015 年 6 月 3 日)
我从Polymer 文档中找到了解决方案。添加以下代码段后,Polymer 1.0 可以在 Mithril 虚拟 DOM 上工作:
通过此设置,Polymer 开始使用 Shadow DOM 而不是默认的 Shady DOM。它与 Polymer 0.5.5 和 JavaScript DOM API 一样友好。感谢你们!