如何从javascript中的其他类/组件调用方法?
我还是前端的新手。我有2个不相关的(无父母/子女关系)课程: 我正在努力:如何从javascript中的其他类/组件调用方法?,javascript,reactjs,class,components,preact,Javascript,Reactjs,Class,Components,Preact,我还是前端的新手。我有2个不相关的(无父母/子女关系)课程: 我正在努力: 从view.js调用search.js方法 从view.js更改search.js的状态值 其他信息: 我已经试过使用。这不是理想的解决办法 我正在使用Preact,它是React的轻量级版本 谢谢 代码: 如果类是不相关的,那么只有三种方法可以在类外部(或者实际上在类内部)使用类的方法: 如果是静态方法,请直接调用它: Search.theStaticMethod() 如果是原型或实例方法,通常的做法是创建
- 从view.js调用search.js方法
- 从view.js更改search.js的状态值
- 我已经试过使用。这不是理想的解决办法
- 我正在使用Preact,它是React的轻量级版本
如果类是不相关的,那么只有三种方法可以在类外部(或者实际上在类内部)使用类的方法:
静态
方法,请直接调用它:
Search.theStaticMethod()
const s = new Search(/*...*/);
s.prototypeOrInstanceMethod();
// ALMOST CERTAINLY NOT THE RIGHT THING
Search.prototype.prototypeMethod();
在将方法应用于对象时有一种变化,即使该对象不是通过新搜索创建的
:
// ALMOST CERTAINLY NOT THE RIGHT THING
const obj = {};
Search.prototype.prototypeMethod.call(obj);
该方法将对象作为this
获取,根据其编写方式,该对象可能正常工作,也可能无法正常工作您需要一个已回答的类实例
const myInstance = new Search();
您可以导出此实例,而不是导出类
export {myInstance};
在view.js中,您需要导入它
import {myInstance} from './relative-path';
然后调用方法
myInstance.search('someInput');
服用比香草js更具反应性。。。可能已经回答了,甚至(原始地) 我有2个非相关(无父/子关系)类: 两者都在同一屏幕/视图/应用程序/组件树中?然后间接但仍然相关 我正在努力:
- 从view.js调用search.js方法
- 从view.js更改search.js的状态值
- 在common parent()中声明,甚至是top
或非常感谢!方法2是可行的。
import {myInstance} from './relative-path';
myInstance.search('someInput');