首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将单击事件绑定到angular2模板插值?

如何将单击事件绑定到angular2模板插值?
EN

Stack Overflow用户
提问于 2018-02-17 04:59:47
回答 1查看 946关注 0票数 0

是否可以将单击事件绑定到插值?因为当我尝试执行下面的代码时,我得到了以下代码

错误:未捕获(在promise中):

错误:模板解析错误:

解析器错误:获取插值({{}}),其中上传({{config.fileLocation}})的第7列应为表达式

这是我们有错误插值的模板,

代码语言:javascript
复制
  <mat-card-actions>
      <button mat-raised-button type="button" (click)="upload({{config.fileLocation}})">Upload</button>
  </mat-card-actions>

这是期望执行的角度组件。

代码语言:javascript
复制
  upload(location = "/tmp/") {
  this.loader.open();

  const fileBrowser = this.fileInput.nativeElement;
  if (fileBrowser.files && fileBrowser.files[0]) {
    const formData: FormData = new FormData();
    formData.append('file', fileBrowser.files[0]);
    formData.append('data', JSON.stringify({
      "method": "filesystem.put",
      "params": [location + fileBrowser.files[0].name, { "mode": "493" }]
    }));

    this.http.post(this.apiEndPoint, formData).subscribe(
      (data) => {
        this.loader.close();
        this.snackBar.open("your files are uploaded", 'close', { duration: 5000 });
      },
      (error) => {
        this.loader.close();
        this.dialog.errorReport(error.status, error.statusText, error._body);

      }
    );
  };
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-17 05:01:41

只是

代码语言:javascript
复制
(click)="upload(config.fileLocation)"

切勿将{{}}[foo]="..."(bar)="..."一起使用

[]()已经将该属性标记为角度绑定。{{}}还只允许字符串绑定(对每个值进行字符串化),而其他的则允许绑定对象值。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48834760

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档