无法使用require.js读取车把模板的数据对象文件

时间:2013-09-23 11:37:28

标签: javascript requirejs handlebars.js

//HTML template
requirejs([
    'handlebars',
    'htmlTemplates/mydiv',
    'text!htmlTemplates/mydiv.html'

    ], 
     function (notUsed0, mydivData, mydivTemplate)
    { 
        console.log(mydivData);  
        var theTemplate = Handlebars.compile (mydivTemplate);       
        $(".mydiv").append(theTemplate(mydivData)); 
 //error Uncaught TypeError: Cannot read property 'customerName' of undefined


    }
    );

数据 - mydiv.js

{
    customerName: "peter"
}

模板 - mydiv.html

<div> Name: {{ customerName }} </div>

mydiv是我的index.html主体标记

中的DIV元素

- - - - - - - - 编辑 我也尝试在函数

中定义一个变量
var theData = {customerName:"Shop Page"};



现在一切正常,没有错误,但html仍然没有附加到我的index.html中带有mydiv id的DIV。为什么呢?

1 个答案:

答案 0 :(得分:1)

要将myDiv.jsrequirejs一起使用,您必须将其内容包含在Require会理解的声明中。查看http://requirejs.org/docs/api.html#defsimple

上的文档

myDiv.js的内容更改为:

define({
    customerName: "peter"
});