4

使用 AngularJS-1.6.5 & Angular-ui-router-1.0.6 && Gulp-3.9.1

我有这个绝对烦人的问题。我有一个似乎构建良好的角度应用程序,但是当我运行 gulp-connect 来运行它时,我一直无法按以下顺序加载模板错误:

  • vendor.js:14803 错误:[$compile:tpload] 无法加载模板:app/auth/views/login.tpl.html(HTTP 状态:未定义未定义)

  • vendor.js:34081 转换拒绝($id:0 类型:6,消息:转换错误,详细信息:错误:[$compile:tpload] 无法加载模板:app/auth/views/login.tpl.html(HTTP状态:未定义未定义)

  • 错误:[$compile:tpload] 无法加载模板:app/auth/views/login.tpl.html(HTTP 状态:未定义未定义)

如果我运行我的 gulp 构建过程,然后使用类似 httpster 之类的东西来提供服务器,那么页面就会正常运行而没有错误。但是,当我将 gulp-connect 添加到构建过程时:

gulp.task("connect",["css", "vendor", "js", "watch", "webWorkers"], function 
 () {
 connect.server({
port: 8888
}); 
});

我得到上面的错误。

这只是在一天前工作,无论出于何种原因,即使以前有效的版本也不再有效。我尝试重定向到另一个模板,验证所有条目都在模板缓存中,尝试检索网络上的文件而不是模板缓存,卸载/重新安装 gulp-connect 并且没有任何效果。在这一点上,我完全被难住了,为了我的理智,我需要尽快弄清楚一些事情。

任何想法将不胜感激。

4

3 回答 3

7

善良。经过一番反复试验,我终于弄清楚了问题所在。问题实际上出在我使用从本地存储中检索到的令牌配置的 http 拦截器上。从本地存储中检索到的令牌在某种程度上已损坏或无效(尚未解决此问题),并且它会默默地出错而不会冒泡错误。

我将本地存储读取方法包装在 try catch 中,现在模板再次加载。

伙计,我在这上面浪费了很多时间,希望这对其他人有所帮助。

于 2017-08-16T00:21:21.243 回答
1

return config;就我而言,当我向我的应用程序添加拦截器时,这是一个遗漏的声明。

app.factory('loadingInterceptor', [
'$rootScope',
function ($rootScope)
{

    return {
        request: function (config)
        {
            var loadingEl = $(".loading-element");
            if (loadingEl)
            {
                showLoading(loadingEl, true);
            }
            // return config; 
        },
        response: function (response)
        {
            var loadingEl = $(".loading-element");
            if (loadingEl) {
                showLoading(loadingEl, false);
            }
        }
    };
}

]);

希望这会对某人有所帮助。

于 2017-11-17T08:41:46.683 回答
1

这也让我走了一段时间。就我而言,它是将我的视图添加到 anonymousEndpoints 配置部分。

匿名端点:['clientapp/modules/login/login.view.html'],

adalProvider.init({
            instance: 'https://*.microsoftonline.com/',
            tenant: '*.onmicrosoft.com',
            clientId: 'Some-long-guid',
            anonymousEndpoints: ['clientapp/modules/login/login.view.html'],
            extraQueryParameter: 'nux=1',
    },$httpProvider);

希望它可以帮助某人。

于 2018-10-26T20:14:01.317 回答