1

下面是我创建 Dojo 小部件“app.ThirdWidget”的代码,它是 ICN 的 Filenet Viewer 小部件的包装器-

require([ "dojo/_base/declare",
          "dojo/dom-construct",
          "dojo/parser",
          "dojo/ready",
          "dijit/_Widget",
          "dijit/_Templated",
          "ecm/widget/viewer/FilenetViewer",
          "ecm/widget/dialog/ErrorDialog",
          "ecm/model/Desktop",
          "ecm/model/Repository"],
          function (declare, domConstruct, parser, ready, _Widget, template, filenet,errorDialog, desktop, repository){
    declare ("app.ThirdWidget",[_Widget, template, filenet,errorDialog, desktop, repository],{

  documentID : '',
  templateString: '<div >' +
'<div data-dojo-attach-point="containerNode" > <span>third widget</span>' +
'<div  data-dojo-attach-point="filenetViewer" data-dojo-type="ecm.widget.viewer.FilenetViewer"  style="width: 100%; height: 100%; position: absolute; margin: 0; overflow:hidden" isChildWindow="true"' +
 ' showNextPrev="false" sideChrome="0"></div>' +
'</div>',
  constructor: function(){

   alert("Constructor");

   },

  postCreate : function(){
  alert("post Create");
  },

  startup: function(){
   alert("Start up");

            }

   });// declare

});// 

但我在萤火虫中遇到以下错误,请帮助:

Error: declare app.ThirdWidget: mixin #4 is not a callable constructor.


throw new Error("declare" + (cls ? " " + cls : "") + ": " + msg);
4

1 回答 1

0

这个错误说,存在循环依赖。您应该使用 dojo.exports ( https://dojotoolkit.org/documentation/tutorials/1.7/modules/ ) 来解决这个问题。

于 2016-03-03T13:56:01.653 回答