debugging - 如何找出最初创建淘汰赛 observable 的位置(在哪个 .js 文件中)?
问题描述
以下.html
代码片段检索名为 ko 的可观察对象的值title
:
<th data-bind="text: title"></th>
只知道.html
文件,有没有办法系统地找出(回溯?),在哪里 - 在.js
项目的哪个文件中 - 这个特定的title
observable 最初是在哪里创建的?
如果是这样,如何实现?
淘汰赛3.4.2
解决方案
假设您可以运行该项目,您可以尝试以下步骤(示例使用 Chrome 浏览器):
找到绑定到 observable 的 dom 元素:
- 右键单击元素->检查
- 在元素选项卡中,右键单击元素 -> 复制 -> 复制选择器
为该元素查找一些淘汰赛上下文以发现包含可观察对象的视图模型
- 在控制台中:
ko.contextFor(document.querySelector('<paste element selector>'))
- 浏览
$data
(当前绑定的视图模型)或任何一个$parents
(在 foreach-es 的情况下...)以查找包含可观察的视图模型名称 - 复制视图模型的名称
- 在控制台中:
找到包含视图模型的 javascript 文件:
- 在开发工具中按 CTRL-SHIFT-F
- 粘贴 viemodel 名称
在结果窗口中,您将找到包含此视图模型名称(以及可观察对象的声明)的所有文件。
推荐阅读
- html - 右侧部分的导航栏突出显示
- python - 相同的权重,实现但不同的结果 n Keras 和 Pytorch
- c++ - 为什么我应该在 WriteProcessMemory() 函数的第二个参数中使用 (void*)?
- javascript - 加载图像数组的for循环内的jQuery错误函数?
- reactjs - 如何在 Nextjs 中散列 CSS 类名?
- azure - 如何在 CosmosDB 中查看文档的存储大小?
- python - 有没有什么方法可以将python中的单词列表中的所有同义词和相似词组合在一起?
- python - 评估来自 bash 的单个 python 命令
- list - Flutter & firesbase:我怎样才能做一个“只包含来自”的查询
- css - Bootstrap 左右边距不适用于 Sass