簡體   English   中英

Ember無法將參數傳遞給動作

[英]Ember cannot pass parameter into action

無論我輸入的是什么值,還是將其更改為onclick =“ {{action ...}}}”,它都會不斷為我帶來不確定的價值。 我已經嘗試了所有我能想到的組合。 我甚至使用標簽,看看是否會保存價值。 我完全不確定應該如何獲取此圖像網址。

這是在余燼中,我在代碼的其他部分中使用了{{action“ function name”}}}組合,但這是唯一無法使用的部分。

模板文件

<div class="gif-display">
              {{#each giffy as |gif index|}}
                  <img width="150px" {{action "selectGIF" value=gif}} src={{gif.images.original.url}}>
              {{/each}}
</div>

控制器類

selectGIF: function (num) {
  console.log("num", num)
  let newPost = this.store.createRecord('post', {
    email: this.get("session.currentUser.email"),
    body: `${gifs[num].images.original.url}`,
    timestamp: new Date().getTime(),
    image: true
  });
  gifs = ''
  newPost.save()
}

是的,我已經測試過它是否可以運行該功能,並且確實可以運行圖像,因此也不是問題。

我的問題是,是否可以將參數傳遞給此函數。 如果沒有解決方法? 我應該使用輔助功能嗎?

謝謝!

函數參數列表是索引列表,而不是鍵值集合。 因此,將參數作為鍵值對傳遞是錯誤的。 相反,應在操作名稱之后直接向助手提供參數,以引用或文字值的空格分隔列表:

<img {{action "selectGIF" gif}} />

資料來源: https : //guides.emberjs.com/v3.0.0/templates/actions/#toc_action-parameters


此頁面還顯示可以將鍵值對提供給操作助手,但是這些是助手執行的參數,而不是實際操作的執行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM