contextRequire mapped to require works for relative.

This commit is contained in:
Tomasz Półgrabia 2021-12-19 20:31:34 +01:00
parent 4407cd934d
commit 3d2d3915ef
4 changed files with 47 additions and 7 deletions

View file

@ -1,14 +1,19 @@
define([
"require",
"dijit/_TemplatedMixin",
"dijit/_WidgetsInTemplateMixin",
"dijit/_AttachMixin",
"dijit/_WidgetBase",
"dojo/_base/declare"
], function(_TemplatedMixin, _AttachMixin, _WidgetBase, declare, template) {
return declare("app/widgets/MainWidget", [_WidgetBase, _AttachMixin, _TemplatedMixin], {
"dojo/_base/declare",
"dijit/form/TextBox",
"./ChildWidget2"
], function(require, _TemplatedMixin, _WidgetsInTemplateMixin, _AttachMixin, _WidgetBase, declare) {
return declare("app/widgets/MainWidget", [_WidgetBase, _AttachMixin, _TemplatedMixin, _WidgetsInTemplateMixin], {
contextRequire: require,
templateString: "<div>"
// + "Hello World!!! <input data-dojo-type=\"dijit/form/TextBox\" />"
// this works as it's dijit
+ "<div data-dojo-type=\"./ChildWidget\"></div>"
+ "<div data-dojo-type=\"./ChildWidget2\"></div>"
// this doesn't work as it's trying to fetch ./node_modules/dojo/ChildWidget which seems to be
// relative to dojo/parser dojo/parser
+ "</div>"