My Angular 1.3.15 application is encountering issues on Internet Explorer 9. An error message
Unable to get property 'replace' of undefined or null reference
is pointing to a specific block of code within the angular core.
The function in question seems to be executing correctly, but I am unsure about its intended purpose and what might be missing for it to work properly on IE9.
function createInternalInjector(cache, factory) {
function getService(serviceName, caller) {
if (cache.hasOwnProperty(serviceName)) {
if (cache[serviceName] === INSTANTIATING) {
throw $injectorMinErr('cdep', 'Circular dependency found: {0}',
serviceName + ' <- ' + path.join(' <- '));
}
return cache[serviceName];
} else {
try {
path.unshift(serviceName);
cache[serviceName] = INSTANTIATING;
return cache[serviceName] = factory(serviceName, caller);
} catch (err) {
if (cache[serviceName] === INSTANTIATING) {
delete cache[serviceName];
}
throw err;
} finally {
path.shift();
}
}
}
In an effort to resolve this issue, I have already included es5-shim and shams, as well as utilized data-ng-* attributes. Despite researching solutions for making Angular work on IE9, I have not come across a similar problem, hence seeking assistance on Stack Overflow.