我想将服务变量与ngModel(双向绑定)绑定到组件输入。因此,我使用简单的返回函数来返回服务变量(这是从服务中获取正确变量所必需的。)
但如果我想运行此代码,我会收到以下错误:
Template parse errors:
Parser Error: Unexpected token '=' at column 10 in [getName()=$event] in ng:///AppModule/HelloComponent.html@2:9 ("
{{nameService.name}}
Hello在我的案例中是一个更复杂的例子。为了简化这一点,我做了以下示例和演示:https://stackblitz.com/edit/angular-hwgoux?file=src%2Fapp%2Fhello.component.ts
服务:
import { Injectable } from '@angular/core';
@Injectable()
export class NameService {
name:string="Hello World!";
constructor() { }
getName(){return this.name};
}
组件:
import { Component, Input } from '@angular/core';
import { NameService} from './name.service';
@Component({
selector: 'hello',
template: `
{{nameService.name}}
<input [(ngModel)]="getName()">`
})
export class HelloComponent {
@Input() name: string;
constructor(private nameService:NameService){
}
getName(){
return this.nameService.getName();
}
}
答案 0 :(得分:0)
更改模板以按以下方式处理双向数据绑定:
setName
$joinQuery = ' from (SELECT * from `table1` ';
$joinQuery .= ' UNION ALL';
$joinQuery .= ' SELECT * from `table2` ) temp';
是服务变量的设定者。
我将您的stackblitz分叉,以显示您想要实现的目标的简化示例:Demo