小编dur*_*lka的帖子

使用jquery动态地将foreignObject插入到svg中

鉴于此html + svg

<div id="svg" style="width: 300px; height: 300px">
    <svg xmlns="http://www.w3.org/2000/svg"  width="300" height="300">
        <svg x='10' y='10' id='group'>
           <rect id="rect" x='0' y='0' width='100' height='100'  fill='#f0f0f0'/>
        </svg>
        <svg x='100' y='100' id='group2'>
           <rect id="rect2" x='0' y='0' width='100' height='100' fill='#f00000'/>
           <foreignobject x='0' y='0' width='100' height='100' >
                <body>
                    <div>manual</div>
                </body>
           </foreignobject>
        </svg>
    </svg>
</div>
Run Code Online (Sandbox Code Playgroud)

我想将一个foreignObject插入#group(最好使用jquery,因为它使操作更简单).我试过了(代码从头部粗略)

$("#group").append("<foreignobject x='0' y='0' width='100' height='100'><body><div>auto</div></body></foreignobject>") 
Run Code Online (Sandbox Code Playgroud)

无济于事,因为"身体"被剥夺了.我已经尝试了几种创造身体元素的异乎寻常的方法,并且我能做到最好 - 萤火虫不再灰化插入的foreignObject元素,但它仍然不可见.

所以要么我没有看到明显的东西,要么有一种奇怪的方式来做到这一点.

想法?

最终解决方案更新 这是我提出的最短内容

var foreignObject = document.createElementNS('http://www.w3.org/2000/svg', 'foreignObject' );
var body = document.createElement( 'body' ); // you cannot create bodies with …
Run Code Online (Sandbox Code Playgroud)

jquery svg

10
推荐指数
1
解决办法
4435
查看次数

在typescript中扩展联合类型别名?

我试图在编译时将某些字符串字段限制为仅某些值.问题是这些值应该是可扩展的.这是一个简化的例子:

type Foobar = 'FOO' | 'BAR';

interface SomeInterface<T extends Foobar> {
  amember: T;

  [key: string]: string; // this really has to stay
}

// let's test it

const yes = {
    amember: 'FOO'
} as SomeInterface<'FOO'>; // compiles as expected

//    const no = {
//        amember: 'BAZ'
//    } as SomeInterface<'BAZ'>; // Type '"BAZ"' does not satisfy the constraint 'Foobar' as expected

// so far so good
// Now the problem

abstract class SomeClass<T extends Foobar> {
  private …
Run Code Online (Sandbox Code Playgroud)

typescript

7
推荐指数
2
解决办法
3832
查看次数

强制重新创建实体到复杂类型转换的数据库

我有一个使用EF(仍在学习它)的WCF服务,以将一些自己的元数据存储在数据库中.在某些时候,我意识到(需求已更改)我不需要为某些类分别使用单独的实体,并希望将它们转换为复杂类型,因为关系是1:1.我不介意重新创建数据库或丢失任何数据,因为没有.

问题是每当我尝试运行应用程序或调用Update-database时,我都会得到"类型'Model.ReportConfig'已经被配置为实体类型.它不能被重新配置为复杂类型." 哪种方式有意义,但我真的不希望它重新配置,但从头开始配置,但即使我删除了所有旧表,甚至在web.config中指定了绝对干净的数据库,我仍然会收到此错误.

顺便说一句.我没有看到任何EdmMetadata表.

这使我对数据完整性的关注感到困惑.有任何想法吗?

EDIT ReportConfig有问题.我的DbContext中没有其他配置(即使我尝试在OnModelCreating中添加modelBuilder.ComplexType();)

[DataContract]
[ComplexType]
//    [Table("UserReportConfigs", Schema = "WebApp")]
public class ReportConfig
{
//        [Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
//        public long Id { get; set; }

    [DataMember]
    public string Title { get; set; }

    [DataMember]
    public DateTime From { get; set; }

    [DataMember]
    public DateTime To { get; set; }

    [DataMember]
    public int ReportAs { get; set; }

    [DataMember]
    public string ParamValue { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

EDIT2我将ReportConfig重命名为Configuration,错误消息现在反映了新名称,因此我假设它的元数据试图跟上它可能是错误的.在迁移过程中看起来EF将其注册为实体,然后发现它被标记为ComplexType.

我正在使用5.0.0-rc版本的EF

.net migration entity-framework ef-code-first

1
推荐指数
1
解决办法
1740
查看次数