如何在knockoutjs组件注册模板字段中使用jquery.tmpl语法? [英] How to use jquery.tmpl syntax in knockoutjs component registration template field?.

查看:70
本文介绍了如何在knockoutjs组件注册模板字段中使用jquery.tmpl语法?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述





我可以在脚本标签内使用jquey.tmpl语法并将其绑定到敲门模板,如下所示:



Hi,

I'm able to use jquey.tmpl syntax inside script tag and bind it to knockout template as below:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>JQuery templ Binding Demo</title>
    <script src="../../Scripts/jquery-2.1.1.min.js"></script>
    <script src="../../Scripts/jquery.tmpl.min.js"></script>
    <script src="../../Scripts/knockout-3.2.0.js"></script>
    <script>
        $(document).ready(function () {
            function myViewModel() {
                var self = this;
                self.employees = [{name:'Sudheer',age:24}, {name:'Sumanth',age:25}];
            };

            ko.applyBindings(new myViewModel());
        });
    </script>
</head>
<body>
    <div data-bind="template:'my-Template'"></div>
    <script type="text/html" id="my-Template">
        {{each employees}}
        <p>Name: ${name}</p>
        <p>Age : ${age}</p>
        {{/each}}
    </script>
</body>
</html>





但是当我使用jquery.tmpl语法时内部组件注册模板字段如下:



But when i use jquery.tmpl syntax inside component registration template field as below:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Component Registration Demo</title>
    <script src="../../Scripts/jquery-2.1.1.min.js"></script>
    <script src="../../Scripts/jquery.tmpl.min.js"></script>
    <script src="../../Scripts/knockout-3.2.0.js"></script>
    <script>
        $(document).ready(function () {
            ko.components.register('name-widget', {
                viewModel: function (params) {
                    this.employeeModel = params.value;
                    this.employeeName = this.employeeModel.name;
                },

                template: "<p><span>${employeeName}</span></p>"
            });

            function employeeInfoViewModel() {
                this.employee = {name:'Sudheer',age:24};
            };

            ko.applyBindings(new employeeInfoViewModel());
        });
    </script>
</head>
<body>
        <p><name-widget params="value: employee"></name-widget></p>
</body>
</html>





它显示为$ {employeeName}而不是sudheer。



有关如何使用jquery的任何信息。 tmpl里面的组件模板字段?



It is displayed as ${employeeName} instead of sudheer.

Any info on how to use jquery.tmpl inside component template field?

推荐答案

document )。ready( function (){
function myViewModel(){
var self = ;
self.employees = [{name:' Sudheer',年龄: 24 },{name:' Sumanth',年龄: 25 }];
};

ko.applyBindings( new myViewModel());
});
< / script >
< / head >
< body >
< div data-bind = 模板:'my-Template' > < ; / div >
< script 类型 = text / html id = my-Template >
{{每位员工}}
< p > 名称:
(document).ready(function () { function myViewModel() { var self = this; self.employees = [{name:'Sudheer',age:24}, {name:'Sumanth',age:25}]; }; ko.applyBindings(new myViewModel()); }); </script> </head> <body> <div data-bind="template:'my-Template'"></div> <script type="text/html" id="my-Template"> {{each employees}} <p>Name:


{name} < / p >
< p > 年龄:
{name}</p> <p>Age :


{age} < / p >
{{/ each}}
< / script >
< / body >
< / html >
{age}</p> {{/each}} </script> </body> </html>





但是当我在组件注册模板字段中使用jquery.tmpl语法时如下:



But when i use jquery.tmpl syntax inside component registration template field as below:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Component Registration Demo</title>
    <script src="../../Scripts/jquery-2.1.1.min.js"></script>
    <script src="../../Scripts/jquery.tmpl.min.js"></script>
    <script src="../../Scripts/knockout-3.2.0.js"></script>
    <script>


这篇关于如何在knockoutjs组件注册模板字段中使用jquery.tmpl语法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆