なぜこれが機能しないのかわかりません。他の場所で呼び出されるまで評価されないという信念を持って、関数を無名関数でラップしました。しかし、「dropchart」が定義されていないというエラーが発生したため、このモジュール内で評価されています。
define(function() {
var stage = {
before: {
createCanvas: function() {
return function() {
before(function(done) {
this.canvas = new dropchart.Canvas({
canvas: argsFor.canvas(),
data: argsFor.data()
});
done();
});
};
}
}
};
return stage;
});
これは、他のモジュールから呼び出される方法です。
define(['jquery', 'dropchart', 'argsFor', 'stage'],
function($, dropchart, argsFor, stage) {
var should = chai.should();
var xAxisSpec = {
run: function() {
describe('xAxis', function() {
stage.before.createCanvas();
...