在Reacjs中导入另一个(帮助器)类

时间:2019-03-06 17:20:28

标签: javascript reactjs ecmascript-6

我想编写一个类似于的帮助器类:

export default class A {
  constructor() {
    console.log(1);
  }
  test() {
    console.log(2);
  }
}

我可以在组件中使用它:

import React, { Component } from "react";
import A from "./service/socket";

class Test extends Component {
  state = {
    counter: 0
  };

  componentDidMount = () => {
    A.test();
  };
}

我该怎么做?

1 个答案:

答案 0 :(得分:5)

testA instance 的一种方法。如果您只想创建辅助函数的集合,而实际上并不需要 class ,则直接从模块中导出函数:

// ./service/socket
export function test() {
  console.log(2);
}

// somefile.js
import {test} from './service/socket';
test();

如果您确实需要一个类,则必须首先创建一个实例,例如

import React, { Component } from "react";
import A from "./service/socket";

const instanceA = new A();

class Test extends Component {
  state = {
    counter: 0
  };

  componentDidMount = () => {
    instanceA.test();
  };
}

但是您不应该将类用作方法包。