问题标签 [dynamic-properties]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3932 浏览

c# - How would I convert List> into a List<[new class with dynamic properties]>

I have a design where class holds a List<> of Summary objects, and each Summary is a dictionary of semi-dynamic properties. That is, every Summary in a given list will have the same keys in the dictionary. I'm using this design to build a set of dynamic "properties" to keep track of summary values since, per my project specs, these summary values will be configurable at runtime.

The question is: How can I flatten this List so that each item in the list is treated as-if the keys in the dictionary were actual properties?

I've tried different variations on converting the Dictionary to a list, but that seems inherently wrong since I really need to treat the keys as properties. I'm guessing I need to use the new dynamic feature of C# 4.0+ and the ExpandoObject, but I can't quite get it right.

The code below shows the basic setup, with "flattenedSummary" giving me what I want - a new list of a dynamic type whose properties are the keys of the Summary's dictionary. However, that is flawed in that I've hard-coded the property names and I can't do that since I won't really know them until runtime.

The flattenedSummary2 version attempts to flatten the list but falls short as the returned type is still a List and not the List that I want.

0 投票
2 回答
3953 浏览

javascript - Javascript 对象:动态创建属性和属性名称

我正在尝试在所有具有动态属性名称和属性的对象中动态创建对象。这是一个示例:

工作:

数据名称:

期望的结果:

该脚本用于google的app脚本中,所以不能使用eval()之类的函数。这是我当前的代码:

我该如何设置?我已经查看了有关在对象中创建动态命名属性的所有 SO 问题。这与两次执行此操作略有不同:动态命名属性的动态命名属性。除非当然,这没有什么不同?

谢谢!

0 投票
0 回答
476 浏览

vb.net - 继承对象的 Vb.net 动态属性

我不能让它工作!我希望能够在继承自 system.dynamic.dynamicobject 的基类的派生类上创建动态属性?

我创建了一个 VB.net 抽象类,我想从该抽象类继承的实例上使用动态属性继承该抽象类。基类读取 XML 文档并将元素和任何属性转换为属性列表 Dictionary。

这个想法是,当派生类被实例化时,抽象类 propertyList 中列出的所有项目都作为公共属性公开。从我在下面列出的代码中,如果将属性 id 添加到属性列表中,那么我希望能够使 Feed.id 可用

抽象类如下所示:

继承上述类的派生类示例如下:

感谢您提前提供任何帮助。

0 投票
1 回答
1100 浏览

python - Gstreamer 管道动态更改 Python

我一直在尝试动态更改 gstreamer 管道,但只要我更改状态,它就会停止流。我在这里绞尽脑汁是为了什么。这是我的代码:

如果有任何替代方法或任何我可以参考的教程,请建议我。提前致谢。

0 投票
1 回答
772 浏览

c++ - boost::dynamic_properties 和不可变图形对象

在使用 BGL 实现一些算法之后,我尝试使用 GraphML 提供 io 函数。但是,我没有设法编译一个合适的 operator<< 接受 const Graph 引用。

这是一个简化的示例:

编译失败:

boost/property_map/property_map.hpp:309:44: 错误:分配只读位置 '(&((const boost::adj_list_vertex_property_map, double, const double&, double VertexProperty::*>&)pa))->boost ::adj_list_vertex_property_map::operator[], double, const double&, double VertexProperty::*>(k)' static_cast(pa)[k] = v;

据我了解 dynamic_properties 文档,那些只读检查应该在运行时发生(这不是整个类型擦除的目标之一)。当然,如果尝试修改不可变属性,它们应该会失败。但是对 wirte write_graphml() 的调用需要对动态属性进行 const 引用,并且不应该改变任何东西。

陈述问题:

  • 为什么编译失败?
  • 我该如何正确地做到这一点?
  • 通过使用其他一些property_map(是/否/哪个)?

对于一个(不)运行的例子@ coliru.stacked-crooked.com:见这里!

问候, 马蒂

0 投票
2 回答
2600 浏览

arrays - Swift中数组下标的速记setter声明

在我的最后一个问题中,我询问了如何在 Swift 中为计算属性的下标编写 setter。我认为我的问题不够实质性,无法理解。对于一项小任务,给出的答案要么不正确,要么复杂。经过长时间的思考,我仍然认为也许一个更聪明的人可以提供一个更鼓舞人心的答案。

为了消除混乱,我的问题是Swift 中的数组下标是否有速记 setter 声明。因为 swift 中有一个数组的简写 setter 声明,但没有它的下标。

速记getter/setter 声明

基本上,在一个 set 操作 foraction[i]将导致actionButton[i]更新的情况下。基本上有两种方法可以快速做到这一点。

第一个解决方案

上面的这个解决方案很容易理解,但是它需要一个函数,在一个类中需要两行代码。不完全是“斯威夫特”。

第二种解决方案

不用说,这是绝对错误的,而且这种解决方案是不存在的。

为什么是的?

因此,是否有类似于第二种解决方案但有效的解决方案?

0 投票
2 回答
1366 浏览

php - Laravel 5 - using dynamic properties in view

I have a dynamic property user in my model:

And I can easy get username in controller like this:

But I don't know how to perform the same in view. I tried this:

Controller:

View:

but without success, I'm getting error Undefined variable: user. So it's look like I can't access dynamic property in view.

Any idea how can I use dynamic property in views?

0 投票
1 回答
1222 浏览

sql-server - 使用实体框架的原始 Sql 查询的动态实体

我在这里挠头。我有一个引导模式,它有一个用于输入 sql 查询的字段。我传递的查询使用对控制器的 AJAX 调用,并使用下面的代码执行 sql 查询并返回一个 JSON 对象。像这样的东西:

但我得到的只是空物。当我不知道列时,我无法传递类型。例如我可以做这样的事情:

然后做这样的事情:

但是当我不知道或不知道这些列时,这对我没有帮助。我什至尝试了使用 ExpandoObjects 的想法。例子:

但是当我想执行查询时该怎么办?

即使我确实放入了 data.GetType() 它也会返回空对象。

在这两个示例中(使用 typeof(object) 和 typeof(data.GetType()))我都返回了这个 JSON 对象:

有什么想法/建议吗?

0 投票
3 回答
495 浏览

matlab - 检索添加到 MATLAB OOP 中的类的动态属性列表

使用 MATLAB,可以向类实例添加动态属性,如下所示:

无论如何,我确实没有找到通过反射获取动态属性列表的方法,确实:

返回属性的空列表:

即使在dynamicprops超类中列出属性也会返回一个空列表:

有没有办法(通过反射)获取添加到类的动态属性列表?

注意:一些解决方法是维护手动列表newprop(end+1) = c.addprop(...),但传递给另一个基类并不是很实用(直到现在我一直在使用反射来获取有关子类中属性的信息)。

0 投票
0 回答
744 浏览

c# - 将 TypeConverter 添加到动态属性

我正在编写一个 C# 表单应用程序,其中一个对象具有PropertyGrid. 这些自定义属性在运行时显示。

这是我的代码:

此代码适用于简单的设置和获取值。我需要一些建议是如何显示一个包含在运行时创建的动态属性的下拉列表。

我了解如何使用 aTypeConverter来获得 a StandardValuesCollection,但不确定如何使用动态属性来做到这一点。我是否需要将此属性添加到动态属性中,是否需要在CustomWebpageObjectTypeUserObjectCustomPropertyDescriptor类中完成?是否需要实现覆盖以添加此属性?我需要以其他方式执行此操作吗?

提前致谢。