Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.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视图模型中的值注入模板?_Knockout.js_Knockout 2.0 - Fatal编程技术网

Knockout.js 是否可以将KO视图模型中的值注入模板?

Knockout.js 是否可以将KO视图模型中的值注入模板?,knockout.js,knockout-2.0,Knockout.js,Knockout 2.0,想了解是否可以使用knockoutjs使用“数据绑定”将视图模型中的值注入到模板中而不使用out 例如,如果我有以下视图模型 var myViewModel = { var self = this; self.firstName = ko.observable("ABC"); self.lastName = ko.observable("XYZ"); }; 我需要创建一个模板,如下所示 <script id="myInjectTemplate" type="tex

想了解是否可以使用knockoutjs使用“数据绑定”将视图模型中的值注入到模板中而不使用out

例如,如果我有以下视图模型

var myViewModel = {
    var self = this;
    self.firstName = ko.observable("ABC");
    self.lastName = ko.observable("XYZ");
};
我需要创建一个模板,如下所示

<script id="myInjectTemplate" type="text/html">
    <h3 id="header_${firstName}">${firstName} - ${lastName}</h3>
</script>

${firstName}-${lastName}
我可以将视图模型中的值注入到占位符中,就像我们在ApacheVelocity中所做的那样


谢谢。

为此,您需要使用胡须:github.com/janl/mustache.js

    var view = {
       title: "Joe",
       calc: function () {
           return 2 + 4;
       }
    };

var output = Mustache.render("{{title}} spends {{calc}}", view);

您知道,您也可以使用数据绑定设置id,因此您可以同时执行以下两项操作:

<h3 data-bind="attr: { id: 'header_$' + firstName() }, text: firstName() + ' - ' + lastName()"></h3>


尽管我会考虑使用一个计算的可观察对象来从名字和姓氏可观察对象创建一个全名。

为什么不想使用数据绑定呢?你需要继续使用mustache来实现这一点:我会尝试一下。谢谢。@PaulManzotti:我的视图模型包含数据库模式的元数据。我试图做的是创建一个UI来反映模式。在这样做时,我需要根据一个命名约定来命名某些DOM元素,该命名约定包含我在视图模型中拥有的部分元数据。希望这能解释我试图解决的问题。Tx.@OmegaSilva啊,考虑到这一点,你需要问一个不同的问题!我想你应该问的问题,请看我的答案。:)谢谢你,保罗!这正是我想要的。抱歉没有在我的原始问题中包含我真正需要的。哈,不用担心!除非你知道如何做某事,否则通常很难知道你应该问什么谢谢你,格林。直到现在才知道胡子的事。我会试试这个。