【问题标题】:How to import plain javascript helper classes into React?如何将普通的 javascript 助手类导入 React?
【发布时间】:2019-02-16 10:29:51
【问题描述】:

我有一个用 ES6 风格编写的 React 类,例如:

export default class App extends React.Component {
    constructor(props) {
        super(props);
        let HClass = new HelperClass();
    }        
}

我的助手类存在于同一个文件中,如下所示:

class HelperClass {
    constructor() {
       this.somevar="";
    }

    some_function= () => {
        //do work
    }
 }

但是,当尝试构造和运行“some_function”方法时,我收到TypeErrors 指出该函数未定义。

我的问题是:

  1. 我在实例化 HelperClass 时做错了什么?
  2. 我应该做一些更像“反应”的东西而不是这些帮助类吗?它们不呈现任何内容,但我需要它们来管理我从 ActiveMQ 处理的消息。

谢谢!

【问题讨论】:

  • 你在哪里打电话给some_function
  • 该代码中没有任何语法错误;但是,除非您将其分配 this,否则您的 hclass 仅在构造函数中且可访问。
  • 这绝对是@mattdevio 的问题。谢谢!
  • 虽然在语法上没有错,但这不是你声明类方法的方式。 some_function () { .

标签: javascript reactjs helper


【解决方案1】:

目前,new HelperClass() 仅在您的构造函数中可用。您只能在此处使用some_function

一般来说,你会这样做:

在具体方法中使用:

// outside the constructor
myMethod() {
  let HClass = new HelperClass();
  HClass.some_function();
}

用于任何方法:

// inside the constructor
this.props.HClass = new HelperClass();

// to call
this.props.HClass.some_function();

或者,简单地使用这个:

// inside the constructor
this.HClass = newHelperClass();

// to call
this.HClass.some_function();

【讨论】:

    猜你喜欢
    • 2020-06-27
    • 1970-01-01
    • 2017-10-19
    • 2018-11-27
    • 1970-01-01
    • 2012-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多