Skip to content
This repository was archived by the owner on Apr 15, 2020. It is now read-only.

Commit 50f824f

Browse files
committed
Enable dependency-aware (re-)loading of marko templates
- Marko templates can be dependent on other Marko templates via include, tag name reference, etc. - Tell Webpack about these dependencies so that changes in a parent template causes Webpack to reload (and recompile) all child templates
1 parent bfe8fcc commit 50f824f

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

src/index.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,20 @@ module.exports = function(source) {
1818
writeToDisk: false
1919
});
2020

21+
this.clearDependencies();
22+
23+
if (compiled.context.meta.tags) {
24+
compiled.context.meta.tags.forEach((tag) => {
25+
this.resolve(this.context, tag.value, (err, res) => {
26+
if (err) {
27+
this.emitWarning(`Unable to resolve dependency for ${compiled.filename}: ${tag.value}\n`);
28+
} else {
29+
this.addDependency(res);
30+
}
31+
})
32+
});
33+
}
34+
2135
var dependencies = compiled.dependencies.map((dependency, i) => {
2236
if (!dependency.code) {
2337
// external file, just require it

0 commit comments

Comments
 (0)