Попытка использовать гем «Шаблоны Angular Rails»

поэтому я пытаюсь использовать папку шаблонов в AngularJS вместо папок «представления», которые вы обычно используете в Rails.

Все отлично работает, когда я пишу все в html, но что, если я хочу писать в Slim и при этом работать с шаблонами AngularJS, а не с представлениями rails?

Ответ: шаблоны угловых рельсов

К сожалению... это не совсем работает. Он добавляет это в начало моей страницы, прежде чем успешно отобразит остальное из slim в html:

Шаблон Angular Rails // источник: app/assets/templates/books/indexx.html.slim

angular.module("templates").run(["$templateCache", function($templateCache) { $templateCache.put("books/indexx.html", '

  //the rest of my webpage, beautifully rendered from slim to html****


') }]); 

Так что близко, но нет сигары. Я видел другие обходные пути для этого, включая вход в вашу папку конфигурации в rails и добавление файлов и т. д. ... но ни один из них, похоже, не работал. В каком направлении я должен смотреть здесь? Моя главная цель - просто использовать «шаблоны» в AngularJS (в основном, чтобы я мог использовать маршрутизатор пользовательского интерфейса), но иметь возможность писать их в SLIM вместо html.

РЕДАКТИРОВАТЬ: Хм... только что перезапустил свой сервер, и теперь все работает. Что действительно пугает, так это то, что все работает без гема 'angular rails templates'... а также без специального конфигурационного файла в config/initializers/angular_helper.rb, который выглядит так: # Для Slim не забудьте также добавить гемы в Gemfile Rails.application.assets.register_engine('.slim', Slim::Template)

Все, что мне нужно было сделать, это позвонить filename.html.slim в моем ui-router... и все работает. ПЕРЕЗАГРУЗИТЕ СЕРВЕР Я думаю, это урок

Извините за потраченное пространство Stackoverflow на это


person rikkitikkitumbo    schedule 10.07.2014    source источник
comment
Можем ли мы увидеть ваш файл application.js? Основной для вашего углового приложения.   -  person Alex C    schedule 11.07.2014
comment
Хм... только что перезапустил свой сервер и теперь все работает. Что действительно пугает, так это то, что все работает без гема 'angular rails templates'... а также без какого-либо специального конфигурационного файла в config/initializers/angular_helper.rb, который выглядит так: # Для Slim не забудьте также добавить драгоценный камень в Gemfile Rails. application.assets.register_engine('.slim', Slim::Template) Все, что мне нужно было сделать, это вызвать файл filename.html.slim в моем ui-маршрутизаторе... и все работает. ПЕРЕЗАГРУЗИТЕ СЕРВЕР Я думаю, это урок   -  person rikkitikkitumbo    schedule 11.07.2014
comment
вы должны быть осторожны, это не будет работать в производстве из-за конвейера активов. Весь смысл этого драгоценного камня заключается в последовательном кэшировании шаблонов. Убедитесь, что вы протестировали это на реальном сервере.   -  person Alex C    schedule 11.07.2014


Ответы (1)


Когда вы используете гем шаблонов Angular Rails, вы должны загружать свои шаблоны через

    templateURL: 'foo/bar/index.html'

когда вы используете путь app/assets/templates/foo/bar/index.html.

person Piioo    schedule 12.09.2014