问题标签 [riot.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.

0 投票
1 回答
778 浏览

innerhtml - riotjs 中的 innerHtml 替代方案是什么

riotjs 中的 innerHtml 的替代方法是 什么

asdfghjkl

在 js 中我们写 var str=document.getElementById("one").innerHtml; 但是对于相同的 html 标签,我们必须在 riotjs 中获取该值

像 riot.id 将返回值 "one" 什么函数将返回值 "asdfghjkl" 而不是 .

0 投票
1 回答
1218 浏览

javascript - riotjs 触发表单提交

所以我在 RiotJS 中有一个简单的表单

当我通过按钮提交时,效果很好。但是当我使用外部按钮触发表单的提交时

它不起作用,因为它以某种方式不运行 riotjsonsubmit函数,而是运行本机submit函数,这不是我想要的......

如何解决?

0 投票
1 回答
1046 浏览

riot.js - riot.js 中的动画在重新渲染后淡入

谁能指出一个使用 riot.js 和 jQuery 动画的例子?

我想在 riot 重新渲染某些东西后利用该事件,然后$(selector).fadeIn()在已更改的元素上触发 jQuery。问题是,当我更改数据时,该元素可能还不存在,所以在 Riot 完成重新渲染之前,我无法运行 jQuery fadeIn。

我能想到的最好的方法是setTimeout;Riot中是否有我可以直接收听的事件?

0 投票
1 回答
794 浏览

node.js - 循环内的防暴标签

我有一个xxx组件,当与riot-tag属性和标准 HTML5 标记一起使用时,它可以正常工作:<article riot-tag="xxx"></article>. 但是,当我在riot-tag循环内使用属性时,标签为空:<article each="{xxxTags}" riot-tag="{xxx}"></article>riot-tag是否可以在循环中使用?我怎样才能让它工作?


补充说明:

我必须一一生成几个不同但相似的组件。所以我有一个数组来存储它们:

为所有以下内容手动放置任何textareas一个:xxxyyyzzz可以正常工作并生成相应的组件。但是,当我尝试使用 时each,它们最终在 chrome devtools 中为空(没有子项),但在其他方面与手动放置的相同。

0 投票
1 回答
696 浏览

riot.js - 从 riot.js 中的子标签获取数据

我想创建一个这样的标签

如果它会起作用,我可以像这样使用它

不幸的是,这似乎不起作用。mydatamodel.xy 没有更新,我无法为 opts.value 分配新值(也不例外,opts.value 根本不会改变它的值)。

根据孩子中“编辑字段”的新值更新父母模型的好方法是什么?

可以使用 this.mytag[i].editfield 访问数据。但这对于较大的表格不是很好的解决方案。我还尝试使用自定义事件并在子标签中触发它。但是,我还没有找到合适的通用解决方案来更新父标签中的模型。这种方法导致了一些笨拙的“this.mytag[i].editfield”方式。

是否有一种方法可以以可以编写的方式创建子标签

mydatamodel.input1 在子标签中更改后立即更新?

谢谢你的想法。

0 投票
2 回答
1182 浏览

javascript - riot.js:监听另一个元素的事件

假设我有两个自定义元素:a 和 b。a 包含另一个可以单击的元素,我想在发生这种情况时触发自定义事件。然后应该由元素 b 捕获该自定义事件。

我可以在元素 a 中使用 this.trigger,但是元素 b 中的 this.on 没有捕获事件(这似乎合乎逻辑,因为它不是在 b 上触发的)。

那么:我可以在元素 b 中检索元素 a 以在元素 b 中执行类似“elementA.on()”的操作吗?

基本上,我想要 RiotControl 之类的功能,但不存储数据,因为我只想在我的用例中触发模式而不存储任何内容。

我可能会退回到 jQuery 并触发和侦听文档上的事件,但这真的是一个好方法吗?

0 投票
1 回答
312 浏览

typescript - SyntaxError: Use of const in strict mode with Riot/TypeScript

Running:

I got the error:

How to fix?

0 投票
2 回答
3030 浏览

javascript - String.replace IE11 中的奇怪行为

我在 IE11 中遇到了一个奇怪的问题。考虑以下内容(riot.js 框架的一部分):

在 localhost 上运行此代码时,它运行良好。但是在我们的暂存环境中运行时,\{片段不会被替换为\uFFF0(代码点 65520),而是被替换为(代码\uFFFD点 65533)。这意味着它稍后在尝试将特殊字符替换回时失败{

replace方法是浏览器的本机方法。包含 HTML(字符串是 DOM 属性)和 javascript 的文件由服务器返回并带有charset=utf-8标头并编码。在暂存环境中,它与其他文件捆绑在一起(尽管不是压缩或修改),并且仍然以 utf-8 编码。
我不知道它为什么这样做,或者为什么它不系统。

0 投票
3 回答
1336 浏览

javascript - IE11 innerHTML 奇怪的行为

我在 IE11 中对 element.innerHTML 有非常奇怪的行为。

正如您在此处看到的:http: //pe281.s3.amazonaws.com/index.html,一些riotjs表达式没有被评估。

在此处输入图像描述

我已经追踪到两件事:
- 上面的欧元符号。它被编码为&euro;,但我与\u20ACor有相同的行为&#8364;。它发生在货币符号范围内的所有字符以及其他一些范围内。删除或使用标准字符不会导致问题。
-riotjs创建自定义标签和模板的方式。基本上它是这样做的:

在结果e节点中,e.childNodes返回以下数组:

显然节点 2 和 3 应该只有一个。将它们分开会使骚乱无法识别要评估的表达式,因此是问题所在。

但还有更多:问题并不一致,例如无法在小提琴上重现:https ://jsfiddle.net/5wg3zxk5/4/ ,其中正确解析了 html 字符串。

所以我想我的问题是某些特定字符如何改变 element.innerHTML 解析其输入的方式?如何解决?

0 投票
0 回答
1018 浏览

javascript - document.getElementById("box").focus() 不关注元素

看看是否有人可以帮助我弄清楚为什么我的元素没有聚焦。

我正在使用 RiotJS 事件和标签。但我认为这个问题与 Riot 无关,因为我用 DOM 上的元素和纯 JS 尝试过它,但它仍然不起作用。

在控制台中,当我要求document.activeElement它给我<input tabindex="0" id="box" type="text" placeholder="Search">但它没有集中。

更奇怪的是,我创建了一个onblur专注于 onblur 元素的函数并且它可以工作!但是当我尝试将它绑定到点击 [所以我可以通过app.search.box.click();] 触发它时,它不起作用。

我用谷歌搜索了很多,并尝试了很多关于如何使用纯 JS 做到这一点的建议。

我在 OSX Yosemite 上。使用最新的 Chrome、Firefox 和 Safari。任何事情都没有运气。请指教。

这是我的search.tag代码:

这是触发打开的 search.js 代码: