这里可以改成私有的静态方法吗

来源:3-6 单例模式实战复习

AqingCyan

2020-02-16

public analyze(html: string, filePath: string) {
    const courseInfo = DellAnalyzer.getCourseInfo(html)
    const fileContent = DellAnalyzer.generateJsonContent(courseInfo, filePath)
    return JSON.stringify(fileContent)
  }

因为,感觉也不是需要通过DellAnalyzer的实例去调用的这两个方法。

写回答

1回答

杨少峰

2020-02-19

其实问题出在于,作者在crowller.ts里面去 new了DellAnalyzer这个类。

并且创建了一个analyzer的实例。

最后将这个实例传递给了Crowller这个类。这是作者做的事情。

我明白你的想法,你想要不创建实例,直接将class传递进去。然后调用class的静态方法。

我觉得你的想法是可行的,也可以这样做,但是不推荐这么做。
0
0

专为小白设计的TypeScript入门课

Dell老师专为TypeScript小白打造的,全栈式教学TS入门课程

2249 学习 · 506 问题

查看课程