Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
js可在JavaScript窗口或对象上观察到位置_Javascript_Jquery_Knockout.js - Fatal编程技术网

js可在JavaScript窗口或对象上观察到位置

js可在JavaScript窗口或对象上观察到位置,javascript,jquery,knockout.js,Javascript,Jquery,Knockout.js,我正在解决一个使用knockout.js的非常复杂的单页web应用程序的问题。 作为我调查的一部分,我试图找出window对象的位置,knockout.js将创建的可观察对象放在何处 使用Chrome的控制台,我从“ko”对象中搜索了很多对象,比如“ko.virtualElements”和“窗口”对象本身 我找错地方了吗 长话短说,使用Chrome的控制台,我想知道我是否能看到类似的东西- window.ko.listofObservable 和window.ko.ListOfObservabl

我正在解决一个使用knockout.js的非常复杂的单页web应用程序的问题。 作为我调查的一部分,我试图找出window对象的位置,knockout.js将创建的可观察对象放在何处

使用Chrome的控制台,我从“
ko
”对象中搜索了很多对象,比如“
ko.virtualElements
”和“
窗口
”对象本身

我找错地方了吗

长话短说,使用Chrome的控制台,我想知道我是否能看到类似的东西-

window.ko.listofObservable

window.ko.ListOfObservables将显示加载的所有可观察对象


注意:如果你好奇的话,我想弄明白为什么在不同类型的导航中,可观察的功能开始失效,但是,在回答这个问题时,请不要担心这一点,除非它提供了一些额外的见解。

有两个步骤,您可以看到当前选定的DOM元素的上下文,因此,如果选择一个根绑定节点,甚至可以看到viewmodel

  • 第一步是在浏览器的开发者控制台的“元素”选项卡中选择DOM节点,Chrome和Firefox将其分配给控制台窗口中的
    $0
    变量
  • 其次,您可以使用
    ko.contextFor
    在数据级别
    ko.dataFor
因此,如果组合这些元素,请在“元素”选项卡中选择主体节点;然后在控制台中键入:

tldr
ko.dataFor($0)
,你应该得到你想要的


顺便说一句,如果您没有使用全局applyBindings,而是绑定到一个特定的元素,那么显然要选择该元素。

不确定我是否得到了这个问题。通常,对于knockout,您需要在视图模型内部声明可观察对象,并且大多数开发人员使用“self”前缀。如果您键入“self”,您可能会在控制台中看到一个已创建的可能观察对象列表。谢谢你。“self.”does给出了一个属性列表(非常类似于“this.”does)。那么,哪个属性包含“可能观察到的列表”?简而言之,这就是我的问题。