3

试图弄清楚为什么我似乎无法在我的 dojo 构建中实习字符串。我的图层文件已正确创建,但与每个单独的 dijit 关联的代码未正确实习。

这是构建输出的一部分,说明了它失败的地方:

release:  Interning strings for : ../../release/fwijits5.31.2012/content/fwijits/optionalDijits/commenting.js
release:      ../../release/fwijits5.31.2012/content/fwijits/optionalDijits/templates/commenting.htm
release:  Optimizing (shrinksafe, stripConsole=normal) file: ../../release/fwijits5.31.2012/content/fwijits/optionalDijits/commenting.js
release:  Could not strip comments for file: ../../release/fwijits5.31.2012/content/fwijits/optionalDijits/commenting.js,

错误:内部错误:非法字符

看起来优化失败了,因为模板没有正确添加到 js 文件中。这是 html 被实习后 js 的样子。您无法从输出中看出,但在 javascript 的末尾添加了一堆特殊字符。

if(!dojo._hasResource["fwijits.optionalDijits.commenting"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
dojo._hasResource["fwijits.optionalDijits.commenting"] = true;
dojo.provide("fwijits.optionalDijits.commenting");

dojo.require("dijit._Widget");
dojo.require("dijit._Templated");

dojo.require("dijit.layout.ContentPane");
dojo.require("dijit.layout.TabContainer");


//The main widget that gets returned to the browser
dojo.declare("fwijits.optionalDijits.commenting", [dijit.layout.ContentPane, dijit._Templated], {

  widgetsInTemplate: true,
  _earlyTemplatedStartup: true,
  templateString: dojo.cache("fwijits.optionalDijits", "templates/commenting.htm"),
  basePath: dojo.moduleUrl("fwijits.optionalDijits"),

  //This function contains all configurable parameters
  constructor: function(params){
    params = params ||{};
    this.inherited(arguments);
  },

  //This functions run on a "startup" call
  startup: function(){
    var _this = this;

    this.inherited(arguments);
  },

  _addPointComment:function(){
    console.debug("button clicked");
  }

});

}

htm 文件非常简单,所以我认为这不是我问题的根源。

<div dojoAttachPoint="containerNode">
  <div dojoattachpoint="_outerDiv">
    <div dojoattachpoint="_addPoint" dojotype="dijit.form.Button" dojoattachevent="onClick:_addPointComment"><b>Add Comment</b></div>
  </div>
</div> 

有什么建议么?

4

1 回答 1

0

哪个版本的道场?构建系统中存在不以 HTML 或 HTM 结尾的实习字符串的错误,尽管我从未尝试过使用 HTM 来确定。

可能值得一试。我知道这已在 1.7 中修复并向后移植到 1.8。

https://bugs.dojotoolkit.org/ticket/15867

于 2013-07-23T02:57:49.067 回答