簡體   English   中英

將一個靜態函數調用到React ES6類中

[英]Call a static function into the class React ES6

我有以下ReactJS類:

import React from 'react'

export class Content extends React.Component {

  static getValue(key) {
    return key
  }

  render() {
    let value = this.getValue(this.props.valueKey);
    return <span dangerouslySetInnerHTML={{__html: value}} />
  }
}

但是我有以下錯誤:

TypeError: this.getValue is not a function

我不明白。 這是調用靜態函數的好方法嗎? 我認為反應是用靜電做的,但我不知道是什么。

需要在類而不是實例上訪問靜態方法。 所以在你的情況下,使用:

Content.getValue()

但是,靜態方法將無法訪問this - 我不認為您希望該方法基於上面的代碼示例是靜態的。

更多: ES6中的靜態成員

您可以在類中以this.constructor.getValue進行訪問。

編輯:我在這里添加了一個JSFiddle。 我做的唯一改變是從構造函數添加函數調用並刪除危險的setHTML - 如圖所示,您可以從this.constructor訪問getValue靜態,並且工作得很好。

暫無
暫無

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

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