2013-11-14 4 views
0
  • У меня есть две упаковки с несколькими полимерными элементами.
  • Каждая упаковка импортирует другую
    • В одном пакете содержатся элементы, которые используют или получают из элементов в другом пакете.
    • Другой пакет использует элементы из импортированного пакета только на демонстрационных страницах, чтобы сделать их более привлекательными.
      Между элементами нет круговых зависимостей.
  • В каждой упаковке у меня есть папка «example», содержащая демонстрационную страницу для каждого настраиваемого элемента.
  • Я использую конфигурацию трансформаторов в pubspec.yaml и pub build для создания Javascript версии демонстрационных страниц.
    (Поскольку pub build еще не поддерживает каталог примеров для точек входа, я создал символическую веб-ссылку, указывающую на примеры.)
  • Когда я выполняю сборку бара, примеры создаются, и некоторые из них работают нормально.
    Не все, хотя, поскольку существует ограничение с трансформаторами:

паба строить с трансформаторами не поддерживают импортированные пакеты, которые имеют трансформаторы, настроенные в pubspec.yaml.
xxxChanged методы не вызываются в JavaScript

Так что мой новый подход, как предложено в Dart веб-Ui группы

  • Я создал новый пакет
  • Новый пакет импортирует два пакета с настраиваемыми элементами.
  • Я символизировал все файлы примеров из двух пакетов настраиваемых элементов в каталог web/и web/src нового пакета.

Когда я исполняю паб построить все кажется нормально, но , когда я открываю демо-страницы и их отладок я вижу ни один из xxxChanged методов любых из пользовательских элементов не дозвонился (кроме случаев, когда они вызываются явно из введеноattached или ready). Другие методы, такие как , вошли в числоattached или ready.

Разница между файлами (размером около 14k) показала несколько меньших различий, но наиболее (около 98%) равны. Этот сгенерированный код (не уменьшенный) не просто расшифровать, по крайней мере, не для меня, и я не нашел намека на то, что могло бы вызвать эти различия.

Любая идея, что может быть источником этой проблемы?

+0

Я попытался скопировать файлы вместо symlinking, но это также не помогло. –

ответ

0

Когда я добавляю

transformers: 
- polymer: 
    entry_points: 

(без entry_points) к pubspec.yaml из пользовательских элементов пакетов все работает отлично в JavaScript тоже.

EDIT

вопросы, связанные

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