Я разрабатываю угловое (1.7) приложение, и у меня возникают некоторые проблемы из-за двойной загрузки приложения.По сути, у меня есть огромное внешнее приложение, и я пытаюсь просто взять некоторые его части и создать плагин для Outlook.У меня проблема в том, что из-за двойной загрузки приложения загружаются все остальные контроллеры, которые меня не интересуют.Подробнее об этом см. Ниже.
Мой файл app.js выглядит как
angular.module(APP, [
'ui.router',
'templates-outlook',
'ngCookies',
]).config([
'$locationProvider',
'$urlRouterProvider',
'$stateProvider',
function ($locationProvider, $urlRouterProvider, $stateProvider,$sceProvider, $sceDelegateProvider) {
console.log('APP.JS');
if(Office !== "undefined") {
Office.initialize = function (reason) {
Office.onReady().then((res) => {
console.log('wagamama', res);
})
};
}
if (location.hash === '') {
$locationProvider.html5Mode(true); // HTML5
} else {
$locationProvider.hashPrefix('!');
}
$stateProvider
.state('extension/', {
url: '/extension/',
templateUrl: 'templates/outlook/extension.html/',
controller: 'ExtensionController'
});
$urlRouterProvider.otherwise('/');
}]) ...
В моем файле index.php у меня есть что-то вроде
if (strncmp($_SERVER['REQUEST_URI'], '/extension/', 9) === 0) {
require('./index.extension.php');
exit();
}
Смысл приведенного выше кода таков, что при посещении пользователем http://8c6rr91e.ngrok.io/extension остальная часть приложения не загружается.
Что происходит, так это то, что пользователь переходит на http://8c6rr91e.ngrok.io/extension
В консоли я вижу следующее: APP.JS Response: {.... // office stuff}
Затемстраница перезагружается, URL-адрес меняется на http://8c6ec91e.ngrok.io/#!/, проверка php не проходит, и поэтому загружается все приложение, в результате чего возникают две ошибки:
1 - офис не определен 2 - все остальные контроллерыв основном загружаемом приложении и, следовательно, ошибка инжектора
Мои вопросы: - Как избежать двойной загрузки?- Что случилось с #?
Спасибо