问题标签 [knockout-components]
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.
knockout.js - afterRender 是否适用于 Knockout 组件?
afterRender
与模板绑定一起工作,但是在将我的模板转换为组件后,似乎没有任何方法可以使用afterRender
. 我曾尝试寻找使用 的组件的示例afterRender
,但找不到任何东西。
knockout.js - 淘汰组件通信
我有一个要转换为的 Web 应用程序和使用 ko 组件的 SPA。我想知道如何进行一种组件间的通信。
例如,我想要一个“通知”组件,其中每个组件都可以发送通知。
我设法通过在主视图模型中共享一个可观察数组来找到解决方案:
和
见这里:http: //jsfiddle.net/nveron/j4829y7p/
我对这个解决方案并不完全满意,我宁愿将通知数据保留在通知组件中。
你有什么想法来解决这个问题吗?
knockout.js - 与模板相比,组件真的更快吗?
我决定通过在以下 jsperf 中添加组件测试来比较 ko 3.2 与其他模板引擎的组件速度:
http://jsperf.com/knockout-template-engines/19
结果真的让我感到困惑,因为我看到组件比常规模板快 98%。我觉得我做错了什么,但无法弄清楚。
有专家能解释一下吗?这种性能是真实的还是我看到的基准测试结果不正确?
knockout.js - 获取 knockout.js 自定义组件内容
我正在尝试在 knockout.js 中创建一个自定义组件。
HTML
Javascript
组件加载正常,一切正常,但我现在想要做的是能够获取原始自定义组件标签内的任何内容(例如“TEXT NEEDED”文本)。
知道我该怎么做吗?希望我解释得足够清楚。
这是一个小提琴:http: //jsfiddle.net/WhesleyBarnard/f7bmynp5/5/
knockout.js - 淘汰组件不更新 DOM
我正在研究一个带有引导选项卡的简单示例,其中第一个选项卡将包含所有站的摘要,单击站将打开一个新选项卡并显示淘汰赛组件。它正在渲染模板并渲染初始数据(Hello World),但不是在 .getJSON 之后,我可以通过 console.log 看到服务器响应,由于某种原因,淘汰赛没有更新 DOM。
twitter-bootstrap - 淘汰赛组件未绑定在动态选项卡上
我正在研究一个带有引导选项卡的简单示例,其中第一个选项卡将包含所有站的摘要,单击站将打开一个新选项卡并显示淘汰赛组件。当我使用静态选项卡而不是动态选项卡时,它可以很好地呈现模板。
它可以很好地生成选项卡,但由于某种原因,Knockout 什么也没做,除了将组件注入 DOM 之外,我是否必须做一些事情来触发淘汰?
knockout.js - 预编译 Web 组件
我在我的一个项目中使用了knockout.js中的 Web 组件实现,以便抽象出我在整个应用程序中重用的 UI 组件。其中一个组件是关于弹出窗口,其中包含有关我的应用程序的大量信息。
抽象这个 About 组件非常适合开发,因为我可以在不同的页面之间重用它,并依靠前端而不是后端的方法来包含它。然而,缺点是搜索引擎优化。我希望所有大型搜索引擎都能看到我的应用程序描述,因此我需要在我的 HTML 中预编译某些 Web 组件以确保所有机器人都能看到它。我认为理想的情况是在我的构建步骤中执行此操作(目前使用 Grunt 构建 btw) - 即。<about-app>
将我的组件的内容内联到我的index.html
.
有没有人写过一个工具来完成这个?或者我应该对这些 Web 组件包含大量(关键)内容的场景使用不同的方法?
knockout.js - 何时绑定淘汰组件 dom 脚本
当我加载会影响 GUI 的淘汰组件时,我试图让其他脚本执行,但是当组件执行时,它们只是不附加到 DOM 上的元素,但是也不会引发错误。下面我使用了一个外部电话插件,我想在模块加载时绑定到一个名为 input 的文本框,但是没有任何反应。
如果我在模板出现后打开控制台并执行:
它正确绑定到控件。我如何在模块内控制何时运行我想要执行的脚本。
谢谢
asp.net-mvc - 如何使用带有父布局的淘汰组件视图?
我正在用 Knockout 替换 ASP.NET MVC+Knockout,我想删除 ASP.NET 并获得静态 js + html。
我的 ASP.NET 视图由 Partial 视图组成(我在我的项目中称它们为小部件),这个 Partial 视图很容易被 Knockout 组件替换。但我有一个问题:ASP.NET Partial 视图有一个布局(每个小部件都有一些 html 装饰),我怎样才能实现类似的淘汰赛组件视图?
简化示例。旧的 asp.net 方案:
查看.cshtml:
SomeWidget.cshtml:
_WidgetLayout.cshtml:
新的仅淘汰赛计划:
查看.html:
视图.js:
SomeWidget.html:
SomeWidget.js:
如何在 Knockout 中替换 _WidgetLayout.cshtml?
javascript - 来自父级的淘汰组件单击事件
让我们假设我有一个模态,其中在由 jquery-file-upload 制成的模态体中有一个 FileUpload 组件。
该组件在视图模型中有一个名为“Upload”的方法,该方法会遍历选定的文件并上传它们。
现在,当我按下模式上的“上传”按钮时,我想上传文件。实现这一目标的最佳和最干净的方法是什么?
我现在的代码是这样的(请注意,这只是一些快速原型代码):
以及组件本身: