如何将用户输入存储为打字稿中的对象键?
How to store user input as an object key in typescript?
作为 Firestore 的新手,我了解到我应该像这样建模:enter link description here
members {
id: xyz
{
name: Jones;
hashtag: {
global: true,
digital: true
}
...
}
因此,我想将 "hashtag" 表单字段的用户输入存储为主题标签 属性 的键,并使用 "true" 自动将值 "true" 分配给该键 Angular 6(打字稿)。我目前的做法是:
submit(newName: string, newHashtag: string) {
if ( newName !== '' && newHashtag !== '') {
this.member.name = newName;
this.member.hashtag = { newHashtag: true};
console.log(this.member);
// this.membersService.addMember(this.member);
}
}
因此,程序总是打印出 "newHashtag" 而不是所需的输入值。我该如何解决这个问题?
export interface Member {
id?: string;
name?: string;
hashtag?: object;
}
<form>
<input type="text" placeholder="new Name" #memberName name="name">
<input type="text" placeholder="new hashtag" #hashtagName name="name">
<button (click)="submit(memberName.value, hashtagName.value);
memberName.value=''">Submit</button>
</form>>
与JavaScript相同:
const property = 'foo'
const object = {}
object[property] = 'desired value'
作为 Firestore 的新手,我了解到我应该像这样建模:enter link description here
members {
id: xyz
{
name: Jones;
hashtag: {
global: true,
digital: true
}
...
}
因此,我想将 "hashtag" 表单字段的用户输入存储为主题标签 属性 的键,并使用 "true" 自动将值 "true" 分配给该键 Angular 6(打字稿)。我目前的做法是:
submit(newName: string, newHashtag: string) {
if ( newName !== '' && newHashtag !== '') {
this.member.name = newName;
this.member.hashtag = { newHashtag: true};
console.log(this.member);
// this.membersService.addMember(this.member);
}
}
因此,程序总是打印出 "newHashtag" 而不是所需的输入值。我该如何解决这个问题?
export interface Member {
id?: string;
name?: string;
hashtag?: object;
}
<form>
<input type="text" placeholder="new Name" #memberName name="name">
<input type="text" placeholder="new hashtag" #hashtagName name="name">
<button (click)="submit(memberName.value, hashtagName.value);
memberName.value=''">Submit</button>
</form>>
与JavaScript相同:
const property = 'foo'
const object = {}
object[property] = 'desired value'