Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/431.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 自定义Dojo小部件是否应该包含一个容器_Javascript_Dojo_Widget - Fatal编程技术网

Javascript 自定义Dojo小部件是否应该包含一个容器

Javascript 自定义Dojo小部件是否应该包含一个容器,javascript,dojo,widget,Javascript,Dojo,Widget,所以我想创建一个自定义小部件,其中包含一些表单字段。我无法预见,在这种情况下,我需要在我现在编写它的唯一目的之外重用它。我希望小部件出现在dijit对话框中 也就是说,将对话框部分作为小部件本身是更好的做法吗?或者我应该将小部件保留在一个“自由形式”的HTML结构中,可以放置在任何内容中 如果您需要自定义Dialog小部件的功能,那么让小部件继承Dialog将是最佳实践。但是,如果您只需要一个自定义表单小部件,那么最好将您的小部件作为自己的模块,可以用作对话框小部件的内容(或任何您需要它的地方)

所以我想创建一个自定义小部件,其中包含一些表单字段。我无法预见,在这种情况下,我需要在我现在编写它的唯一目的之外重用它。我希望小部件出现在dijit对话框中


也就是说,将对话框部分作为小部件本身是更好的做法吗?或者我应该将小部件保留在一个“自由形式”的HTML结构中,可以放置在任何内容中

如果您需要自定义Dialog小部件的功能,那么让小部件继承Dialog将是最佳实践。但是,如果您只需要一个自定义表单小部件,那么最好将您的小部件作为自己的模块,可以用作对话框小部件的
内容(或任何您需要它的地方)。

后一种方法有什么缺点吗?我遇到的最坏情况是,如果我想在对话框中设置一个“取消”按钮,我不得不求助于其他方法,比如pub/sub系统来关闭它,因为小部件不知道它的容器。