-
Notifications
You must be signed in to change notification settings - Fork 78
Open
Description
When you use webpack, you no longer have a specific (template) file to point to. This means that when angular-tree-dnd templateUrl is set to a template file path, it will return a 404.
I've gotten your library to work by first storing my custom dnd template (From your example) in the template cache when the controller spins up:
.run(["$templateCache", function ($templateCache) {
$templateCache.put("/components/app/tree-dnd-template-render.html", require('./components/app/tree-dnd-template-render.html'));
}]);
then next updating your library's template-url function to first check the $templateCache for the data before attempting a GET request:
if ($templateCache.get(attrs.templateUrl)) {
var data = $templateCache.get(attrs.templateUrl) || '';
data = angular.element(data.trim());
promiseCheck = checkTreeTable(data, scope);
if (angular.isObject(promiseCheck)) {
promiseCheck.then(function () {
element.append($compile(data)(scope));
});
} else {
element.append($compile(data)(scope));
}
} else {
$http.get(
attrs.templateUrl || $TreeDnDTemplate.getPath(),
{cache: $templateCache}
).then(function (response) {
var data = response.data || '';
data = angular.element(data.trim());
promiseCheck = checkTreeTable(data, scope);
if (angular.isObject(promiseCheck)) {
promiseCheck.then(function () {
element.append($compile(data)(scope));
});
} else {
element.append($compile(data)(scope));
}
}
);
}
It's not the most elegant, but you get the idea I think. I'm sure you can do a better job, but would you consider supporting something like this?
Either way, Thanks for your hard work on this project!
Metadata
Metadata
Assignees
Labels
No labels