Skip to content

Commit 8926f28

Browse files
committed
better loading logic
clean up repeatable code added cacheAvoider
1 parent e9f0611 commit 8926f28

File tree

2 files changed

+19
-12
lines changed

2 files changed

+19
-12
lines changed

server/inject.js

+16-11
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,36 @@
1+
var format = Npm.require('util').format;
2+
13
// only Meteor < 0.9 has this tyoe of naming for packages
24
if(Package['inject-initial']) {
35
Inject = Package['inject-initial'].Inject;
4-
var assets = '/packages/zones/assets';
6+
var packageName = 'zones';
57
} else {
68
// for Meteor 0.9 +
79
Inject = Package['meteorhacks:inject-initial'].Inject;
810

911
// this is a trick to idnentify the test environment
1012
// need to set this env var before running tests
1113
if(process.env['METEOR_ENV'] == 'test') {
12-
var assets = '/packages/local-test:meteorhacks:zones/assets';
14+
var packageName = 'local-test:meteorhacks:zones';
1315
} else {
14-
var assets = '/packages/meteorhacks:zones/assets';
16+
var packageName = 'meteorhacks:zones';
1517
}
1618
}
1719

18-
var HTML = [
19-
'<script src="'+assets+'/utils.js" type="text/javascript"></script>',
20-
'<script src="'+assets+'/before.js" type="text/javascript"></script>',
21-
'<script src="'+assets+'/zone.js" type="text/javascript"></script>',
22-
'<script src="'+assets+'/tracer.js" type="text/javascript"></script>',
23-
'<script src="'+assets+'/after.js" type="text/javascript"></script>',
24-
'<script src="'+assets+'/reporters.js" type="text/javascript"></script>',
20+
var fileList = [
21+
'utils.js', 'before.js', 'zone.js', 'tracer.js',
22+
'after.js', 'reporters.js'
2523
];
2624

25+
var cacheAvoider = (new Date).getTime();
26+
var finalHtml = '';
27+
fileList.forEach(function(file) {
28+
var template = '<script type="text/javascript" src="/packages/%s/assets/%s?%s"></script>\n';
29+
finalHtml += format(template, packageName, file, cacheAvoider);
30+
});
31+
2732
Zones = {
28-
html: HTML.join('\n'),
33+
html: finalHtml,
2934
enabled: true,
3035
};
3136

tests/loader.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -67,5 +67,7 @@ function getSrc(el) {
6767
}
6868

6969
function replacePackageName (path) {
70-
return path.replace(/(.*)\/packages\/(.*)\/assets/, '/packages/*/assets');
70+
var withNoPackageName = path.replace(/(.*)\/packages\/(.*)\/assets/, '/packages/*/assets');
71+
var withNoCacheAvoider = withNoPackageName.replace(/\?.*/, '');
72+
return withNoCacheAvoider;
7173
}

0 commit comments

Comments
 (0)