Javascript 向客户端发送模型属性方法
有没有通过Http GET发送模型属性函数的技巧 假设我有一个模型用户:Javascript 向客户端发送模型属性方法,javascript,json,angularjs,sails.js,waterline,Javascript,Json,Angularjs,Sails.js,Waterline,有没有通过Http GET发送模型属性函数的技巧 假设我有一个模型用户: attributes: { last_name : "string" , first_name: "string", name : function() { return this.first_name + " " + this.last_name; } } 控制器: User.findOne( { id : 1}).exec(function(err
attributes: {
last_name : "string" ,
first_name: "string",
name : function()
{
return this.first_name + " " + this.last_name;
}
}
控制器:
User.findOne( { id : 1}).exec(function(err,user) {
res.view("profile", {user:user});
});
还有一个观点:
<div>
<h4> hi <%= user.name() %>
</div>
在客户端(角度):
视图无法再像以前那样轻松地执行此操作:
<div>
<h4> hi {{ user.name() }} </h4>
</div>
你好{{user.name()}
有什么想法或解决办法吗?我试图覆盖模型的toJSON方法,但没有成功。如果您有任何想法,我将不胜感激 好的,一开始听起来是合法的,但这对我来说并不是真的有效。我不认为这个函数真的被调用了,我在里面添加了一个控制台日志语句。你以前测试过它吗?好的,我知道了,toJSON是一个属性函数,它必须在attributes对象中。我也不能发送函数我的示例是关于属性对象的?这种方法有效,经过充分测试。
attributes: {
last_name : "string" ,
first_name: "string",
name : function()
{
return this.first_name + " " + this.last_name;
}
},
toJSON : function(){
var obj = this.toObject();
obj.name = this.first_name + " " + this.last_name;
return obj;
}
<div>
<h4> hi {{ user.name() }} </h4>
</div>
attributes: {
last_name : "string" ,
first_name: "string",
name : function()
{
return this.first_name + " " + this.last_name;
}
},
toJSON : function(){
var obj = this.toObject();
obj.name = this.first_name + " " + this.last_name;
return obj;
}