2016-09-04 15 views
0

我有一个集合mongoose玉/帕格脚本代码中的调用模式方法

我已经为模式添加了一个方法。

的问题是,我用我的JavaScript代码的所有文件与jade使用此代码段

script. 
    var nodes = !{JSON.stringify(nodes)}; 

但现在nodes会填充对象的数组,我再也不能叫我的架构方法,即它不可能做到这一点

script. 
    var nodes = !{JSON.stringify(nodes)}; 
    nodes = nodes.map(function (node) { 
    return node.generateFullName() 
    }); 

因为每个对象只存储值,因此不是架构方法。上面的代码片段将导致错误node.generateFullName is not a function

我该怎么做才能在JavaScript中调用generateFullName()函数?它工作正常,在正常的模板

each node in nodes 
    p= node.generateFullName() 

回答

0

由于JSON.stringify -ed数据是从架构和它的方法分离的一个数组,你要么需要在模板中添加代码复制generateFullName方法在客户端,或者更简单地说,您可以在内插的JSON.stringify呼叫中移动您的地图功能,如下所示:

!{JSON.stringify(nodes.map(function(node) { return node.generateFullName(); })};