2015-07-07 4 views
6

Я спрашиваю об этом, потому что пару раз сейчас я пытался поиграть с командой $locationProvider.html5Mode(true) вместе с <base href="/"> и столкнулся с множеством ошибок, вызывающих сценарии/стили/изображения для моего проекта. Я предполагаю, что что-то я делаю неправильно, но есть ли какая-то структура папок, за которой вы должны следовать, чтобы вы не сталкивались с этими ошибками? Или существует конкретный способ работы base href, что я не совсем понимаю?

Недавно я подумал, что попробую его в очень маленьком приложении. Это эффективный статический веб-сайт, но я хочу воспользоваться маршрутизацией Angular, чтобы убедиться, что все страницы могут загружаться мгновенно. Так что моя структура будет что-то вроде этого:

my-project 
    css 
    images 
    js 
     angular 
      app.js 
      app.routes.js 
      mainCtrl.js 
    views 
     home.html 
     about.html 
     contact.html 
    index.html 

Так что я знаю, что эта структура папок не велика, но я буду использовать только Угловой в этом проекте для маршрутизации, ничего больше, так что это соответствует моим потребностям ,

я вкладываю в голову <base href="/">, положить в тело ng-app и ng-controller, а внутри тела положить <div ng-view> где-то тоже.

Я добавил в $locationProvider.html5Mode(true) и попробовал приложение. Затем все мои скрипты загружаются как http://localhost:8888/script.js, что неверно. Проект находится в папке, так что index.html находится в http://localhost:8888/my-project/index.html. Поэтому, например, нужно загрузить скрипты с http://localhost:8888/my-project/js/angular/app.js.

Есть ли что-то, что я не понимаю о base href? В конце концов, я могу разместить это приложение где-то в сети, поэтому я хочу, чтобы URL-адреса для скриптов и т. Д. Всем были важны для файла. У кого-нибудь есть идеи?

Хорошо, так что над base href тегом я бы мои стили CSS, которые будут связаны, как css/style.css и в нижней части моего body тега Я бы мои скрипты загруженного в js/init.js или js/angular/app.js, например. Это попытается загрузить его, как если бы папка js была расположена непосредственно на localhost:8888/js.

+0

Похоже, что вам нужно '' – Phil

+1

'base href' - это не просто угловой вызов, но и все ваши относительные ссылки, с чего начать. Если ваши файлы js загружены, не должны иметь ничего общего с вашей угловой маршрутизацией. Как вы загружаете их, и где вы кладете базовый href? – Jan

+0

Можете ли вы показать пример вашего файла 'index.html', в частности теги'

Смежные вопросы