Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/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
Knockout.js 关于ko.toJSON的用法($data,null,2)_Knockout.js - Fatal编程技术网

Knockout.js 关于ko.toJSON的用法($data,null,2)

Knockout.js 关于ko.toJSON的用法($data,null,2),knockout.js,Knockout.js,似乎ko.toJSON()方法会将某些内容转换为json字符串 <pre data-bind="text: ko.toJSON($data, null, 2)"></pre> 但我不明白什么是$data,因为它从未在代码中声明或使用过。您可以在此处看到我的完整代码: 为什么第二个参数null以及第二个参数作为第三个参数的含义是什么?$data是一个特殊的敲除,它仅在数据绑定表达式中可用,并且在当前上下文中始终引用视图模型对象 另外两个参数控制最终由ko.toJSON

似乎
ko.toJSON()
方法会将某些内容转换为json字符串

<pre data-bind="text: ko.toJSON($data, null, 2)"></pre>

但我不明白什么是
$data
,因为它从未在代码中声明或使用过。您可以在此处看到我的完整代码:


为什么第二个参数
null
以及第二个参数作为第三个参数的含义是什么?

$data
是一个特殊的敲除,它仅在
数据绑定
表达式中可用,并且在当前上下文中始终引用视图模型对象

另外两个参数控制最终由
ko.toJSON

其中
null
替换函数

一个改变字符串化过程行为的函数,或一个字符串和数字对象数组,用作选择要包含在JSON字符串中的值对象属性的白名单。如果此值为null或未提供,则生成的JSON字符串中包含对象的所有属性

2是空间

一个字符串或数字对象,用于在输出JSON字符串中插入空格以便于可读


$data
指的是您当前的上下文。因此,在您的情况下,它指的是循环上下文,即它将打印所有数据
。cheers@supercool我有一个小小的要求。可以通过几个小示例来说明$data在不同上下文中的用法。假设我想打印json格式的主视图模型数据或嵌套的单视图模型数据……如何实现它。谢谢,伙计,给我点时间,我现在正忙着呢。一旦我有时间,我会发布一个样本给你EOD@supercool谢谢你。假设人们可以使用4/5视图模型,但这些模型可能不是同时都处于活动状态……那么在这种情况下,如何按$data打印json版本的数据呢。等待您的答案,慢慢来……没问题……谢谢您的帮助,我们使用
ko.toJSON
来进行测试,即检查它是否正确循环。试试这个例子,它解释了如何处理2个虚拟机<代码>$data总是指当前上下文,不要混淆它非常简单。在您的情况下,
$data
内容是相同的。