我想更改 Breeze 的序列化程序,以便我的 javascript 对象是驼峰式的。在文档中它说可以做到这一点,但说这是要解释的。
您可以更改格式化程序的配置 [待解释],但如果您这样做,您有责任确保您的更改不会与 Breeze 的期望相冲突。
有谁知道如何做到这一点?
我想更改 Breeze 的序列化程序,以便我的 javascript 对象是驼峰式的。在文档中它说可以做到这一点,但说这是要解释的。
您可以更改格式化程序的配置 [待解释],但如果您这样做,您有责任确保您的更改不会与 Breeze 的期望相冲突。
有谁知道如何做到这一点?
最简单的就是简单地调用
breeze.NamingConvention.camelCase.setAsDefault();
在您的第一个查询之前(或在您创建您的第一个元数据存储之前)。
内置的NamingConvention.camelCase是一个非常简单的驼峰式大小写实现,因此您也可以编写自己的命名约定,如下所示:
var namingConv = new breeze.NamingConvention({
serverPropertyNameToClient: function (serverPropertyName, prop) {
if (prop && prop.isDataProperty && prop.dataType === DataType.Boolean) {
return "is" + serverPropertyName;
} else {
return serverPropertyName.substr(0, 1).toLowerCase() + serverPropertyName.substr(1);
}
},
clientPropertyNameToServer: function (clientPropertyName, prop) {
if (prop && prop.isDataProperty && prop.dataType === DataType.Boolean) {
return clientPropertyName.substr(2);
} else {
return clientPropertyName.substr(0, 1).toUpperCase() + clientPropertyName.substr(1);
}
}
});
namingConv.setAsDefault();