【问题标题】:dojo: How can I inherit from a window class and make a custum one containing additional stuff?dojo:如何从窗口类继承并制作包含其他内容的自定义窗口类?
【发布时间】:2013-05-15 14:21:22
【问题描述】:

我可以从 dojo 1.8 中的窗口类继承吗?我想制作我的自定义窗口,其中包含一些额外的元素。这将非常有用,因为我需要多次重复使用它。

【问题讨论】:

  • 对于任何 javascript 对象,您应该能够添加任何您想要的属性和函数。 javascript 中的对象没有必须遵守的固定类型(类)定义。
  • 谢谢。我现在正在努力。我希望有人也发布一些 sn-p :)

标签: javascript inheritance dojo window


【解决方案1】:

不是特定于 dojo,但在 javascript 中,您可以随意向对象添加属性和方法。

// assuming you myWindow is an object
myWindow.myProperty = "Test";
myWindow.myFunction = function(arg){ alert("Hello "+arg); };

以这种方式扩充对象就是他们所说的猴子修补,甚至可以对原生类型进行。

【讨论】:

  • 谢谢。那么如何更好地构建我的应用程序呢?我的意思是 - 可能是我需要在某个文件中写入函数,当我想初始化我的自定义对象时,我添加了这样的函数:myWindow.myFunction = myInitCustomFunction();?
  • 您还可以创建一个函数,将您需要的所有功能添加到传入的窗口对象中。所以function makeWindowCool(win){ win.myFunction = myInitCustomFunction(); 那么你可以像往常一样创建你的窗口然后调用makeWindowCool(myWindow);
  • 值得注意的是创建一个这样的函数,您不仅限于向窗口添加属性,您可以调用 myInitCustomerFunction() 并执行任何其他您需要使窗口表现得像您想要的事情到。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-02
  • 2023-03-26
  • 1970-01-01
  • 2014-08-07
  • 1970-01-01
  • 2013-05-14
相关资源
最近更新 更多