2012-05-01 1 views
1

Решены:Backbone.js ошибка шаблона с CoffeeScript и эко шаблонным языком

У меня есть позвоночник (0.9.2), записанный в CoffeeScript следующего

class Animal.Views.Cats extends Backbone.View 
template: JST['animals/cats'] 
... 
... 
render: -> 
    $(@el).html(@template()) 
    this 

С помощью этого CoffeeScript кода, при выполнении в браузере я получаю следующую ошибку в консоли

шаблона Свойства объекта < #cat> не является функция

Я использую шаблон эко с рельсами 3,1 серверных , где я буду неправильно?

решение:

проблема была глубоко вложенной структуры файл шаблона,

шаблона: JST [ 'млекопитающие/животные/кошки'] исправляет проблему

ответ

1

в вашем code 'template' не определяется как функция, а как атрибут.

попробовать

template: -> JST['animals/cats'] 

т.е. вставить функцию стрелка '->'

или, если вы не хотите, чтобы функция, то падение скобки после @template

$(@el).html @template 
+0

с шаблоном: -> фактический файл шаблона Безразлично» t получить взял – railerhelper

+0

, так это работает, если вы отпустите круглые скобки и обрабатываете шаблон как атрибут? или же шаблон «животные/кошки» на самом деле не существует? – francpaul

2

Чтобы повторить, если у вас есть такая структура каталогов:

app/assets/templates/namespace/animals/cats.jst.eco 

Вам необходимо включить пространство имен при ссылке на шаблон:

  • Будет не работы: JST['animals/cats']
  • будет работать: JST['namespace/animals/cats']

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

  • Нет связанных вопросов^_^