当前位置:  开发笔记 > 编程语言 > 正文

动态创建要在模态中使用的类

如何解决《动态创建要在模态中使用的类》经验,为你挑选了1个好方法。

我有以下代码用于显示模态:

app.html

Test


    
    
    

app.js

setModal(modal) {
    this.contentModal = modal;
    $('.modal').modal();
}

人,information.html

 

人,information.js

import {bindable, inject} from 'aurelia-framework';

@inject(Element)
export class PersonInformation {  
    constructor() {
        this.person = new Person();
    }
}

class Person{  
    firstName = 'Patrick';
    lastName = 'Bateman';
}

此代码适用于显示以下内容:

模态对话框的图像

我无法弄清楚如何注入自己的数据来动态创建"人".

伪代码:

app.html

    Test

app.js

setModal(modal, firstname, lastname) {
    this.contentModal = modal;

    this.contentModal.Person.firstName = firstname;
    this.contentModal.Person.lastName = lastname;

    $('.modal').modal();
}

有没有人有这方面的经验?



1> DaniCE..:

首先,错误是因为contentModal属性是字符串'person-information'的简单,因此它没有定义任何person属性.

但是代码中也存在概念问题:您正在使用content.bind将动态内容分配给模态元素,因此您的app.js类不了解内容,您不应尝试分配内容属性值你的app.js课程.

为了保持一般性,你可以做一些事情(未经测试)

setModal(modal, props) {
    this.contentModal = modal;
    this.modalProps = props; 
    ...
}

并称之为

Test

然后在person-information.js做

bind(bindingContext) {        
   this.person.firstName = bindingContext.modalProps['firstName'];
   ....
}

更新:

此解决方案目前不起作用:

plunker再现这种情况

提议的问题

推荐阅读
个性2402852463
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有