vue后端数据赋值给类

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue后端数据赋值给类相关的知识,希望对你有一定的参考价值。

Vue 后端数据赋值给类,可以使用 Vue 实例的“data”属性,Vue 会在实例上根据 data 定义的属性设置一些响应式状态,当 data 中定义的属性发生变化时,Vue 会将变化传播到它的模板,以及任何使用了该属性的组件上。通过在组件的 data 属性中进行定义,Vue 就可以在组件中将后端的数据赋值给类。 参考技术A 1 可以在vue中通过axios等方式获取后端数据,然后将数据赋值给类;
2 通过获取后端数据创建对象、设置类属性等方式可以实现将后端数据赋值给类;
3 除此之外,还可以使用第三方库例如lodash等来简化数据赋值的过程。

通过字典给类的实体属性赋值生成url字符串

private static Dictionary<string, string> SortedToDictionary(SortedDictionary<string, string> dicArrayPre, params string[] paras)
{
Dictionary<string, string> dict = new Dictionary<string, string>();
foreach (KeyValuePair<string, string> temp in dicArrayPre)
if (!paras.Contains(temp.Key) && !string.IsNullOrEmpty(temp.Value))
dict.Add(temp.Key, temp.Value);
return dict;
}
private static string GetParmStr<T>(T model, bool isUrlEncode = false, params string[] paras)
{
var sortedDict = GetResultDictionary<T>(model);
var dict = FilterParams(sortedDict, paras);
return CreateLinkStringUrl(dict, isUrlEncode);
}
private static SortedDictionary<string, string> GetResultDictionary<T>(T model)
{
SortedDictionary<string, string> sortedDictionary = new SortedDictionary<string, string>();
List<string> paramsList = new List<string>();// 把实体类中的属性名称转换成List<string>
var modelDict = model.GetType().GetProperties().ToDictionary(a => a.Name.Substring(0, 1).ToLower() + a.Name.Substring(1));
foreach (var dkey in modelDict)
paramsList.Add(dkey.Key);

foreach (var p in paramsList)
{
System.Reflection.PropertyInfo pi = null;
if (modelDict.TryGetValue(p, out pi))
{
object obj = pi.GetValue(model, null);
if (pi != null && obj != null && !obj.ToString().Equals(""))
sortedDictionary.Add(p, obj.ToString());
}
}
return sortedDictionary;
}
private static Dictionary<string, string> FilterParams(SortedDictionary<string, string> sortedDictionary, params string[] paras)
{
Dictionary<string, string> dict = new Dictionary<string, string>();
foreach (KeyValuePair<string, string> temp in sortedDictionary)
if (!paras.Contains(temp.Key) && !string.IsNullOrEmpty(temp.Value))
dict.Add(temp.Key, temp.Value);
return dict;
}
private static string CreateLinkStringUrl(Dictionary<string, string> dictionary, bool isUrlEncode = false)
{
StringBuilder stringBuilder = new StringBuilder();
if (isUrlEncode)
{
foreach (KeyValuePair<string, string> temp in dictionary)
stringBuilder.Append(temp.Key + "=" + HttpUtility.UrlEncode(temp.Value) + "&");
}
else
{
foreach (KeyValuePair<string, string> temp in dictionary)
stringBuilder.Append(temp.Key + "=" + temp.Value + "&");
}
int nLen = stringBuilder.Length;
stringBuilder.Remove(nLen - 1, 1);
return stringBuilder.ToString();
}

以上是关于vue后端数据赋值给类的主要内容,如果未能解决你的问题,请参考以下文章

关于spring给类类型赋值的问题

vue中当数据为空时的处理

怎样把后端获取的数据放到vue下拉框里面?

JVM学习--局部变量表

vue iview table表格 根据后端数据动态设置已选

Antd 表格合并与赋值渲染