gpt4 book ai didi

javascript - Backbone.js 在保存前修改模型中的数据

转载 作者:行者123 更新时间:2023-11-29 10:50:06 24 4
gpt4 key购买 nike

我想知道当我在模型上调用 setsave 方法时如何转换数据。具体将输入的日期字符串转换为纪元时间。

我知道我可以在 View 中转换它,但据我所知,这对我的验证来说效果不是很好。

型号代码为here如果你有兴趣。

感谢您的帮助!

最佳答案

我可以收集到的信息有两种:

1 在你的 View 中转换它们

这意味着您可以为 View 滚动自己的转换或使用类似 Backbone.modelbinder 的东西为您进行转换。然后你必须修改你的验证方法来接受一个纪元日期。我个人更喜欢这个,我认为它适合 UI 来处理验证用户输入的格式正确和转换为正确的单位,并让模型处理验证值是否在可接受的限制内。

2 在你的模型中转换它们

Backbone 不提供开箱即用的功能。如果您将某物设置为某物,则没有简单的方法可以将其转换为其他东西,尤其是在 validateset 之间。基本上你最好的选择是推出你自己的 set -function with something like

// Inside the set function
...
if (!this._validate(attrs, options)) return false; // real line in the set func
// insert something like this, after validate you know the values are eligible for conversion
attrs = this.convert(attrs); // a custom func that converts attributes to right units
...
// set continues as usual

希望这对您有所帮助!

关于javascript - Backbone.js 在保存前修改模型中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11964713/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com