2015-03-19 5 views
1

Я пытаюсь создать пользовательский элемент, у меня было несколько предупреждений на моей странице результатов, которые я исправил. Последний из них является:
custom element with name "paper-fab-menu" not found. See http://goo.gl/5HPeuP#polymer_11 for details.Пользовательский элемент не найден

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

<link rel="import" href="../../../packages/polymer/polymer.html"> 
<link rel="import" href="../../../packages/paper_elements/paper_fab.html"> 

<polymer_element name="paper-fab-menu" noscript> 

    <template> 
    <paper-fab icon='menu'></paper-fab> 
    </template> 

    <!--<script type="application/dart" src="paper_fab_menu.dart"></script>--> 

</polymer_element> 

Там нет предупреждения об этом коде.

Там нет никакого предупреждения в моем index.html коде, когда я импортировать мой элемент (там был один о неправильном пути, но она была решена), вот импорт часть моей index.html:

<link rel="import" href="packages/core_elements/core_scaffold.html"> 
<link rel="import" href="packages/core_elements/core_item.html"> 
<link rel="import" href="packages/core_elements/core_icon.html"> 
<link rel="import" href="packages/core_elements/core_submenu.html"> 
<link rel="import" href="packages/paper_elements/paper_input.html"> 
<link rel="import" href="../lib/custom_paper_elements/paper_fab_menu.html"> 

<!--<script async type="application/dart" src="index.dart"></script>--> 
<script type="application/dart">export 'package:polymer/init.dart';</script> 
<script async src="packages/browser/dart.js"></script> 

Редактор дротика по-прежнему отмечает <paper-fab-menu> как предупреждение. Ошибка Полимера утверждает, что эта ошибка указывает на неправильный импорт, но все импортные решения решаются правильно, я не вижу проблемы!

для Windows 8.1 Dart Editor 1.8.5 Dart SDK 1.8.5

Спасибо за вашу помощь

+0

Вы проверили, действительно ли файл, на который он жалуется, существует? Вы можете попробовать 'pub cache repair' в строке ccommand. –

+0

Файл существует. Я попытался переименовать имя элемента в paperfabmenu (без тире), и он сработал. Dashes back = проблема назад Я не слышал об именах ограничений в полимере об использовании тире – user3013860

+0

Ограничение состоит в том, что каждый элемент Polymer (или каждый пользовательский элемент) должен иметь тире в имени, даже если в этом случае кажется странным , –

ответ

1

<polymer_element ... должен быть <polymer-element ... (тире вместо подчеркивания)

Вы не должны выходить за пределы каталоги верхнего уровня, используя ../. Только импорт из lib или из текущего каталога верхнего уровня. Для импорта из lib использования <link rel="import" href="packages/yourpackagename/custom_paper_elements/paper_fab_menu.html">

Для получения более подробной информации см: https://www.dartlang.org/polymer/app-directories.html Это выглядит немного сложнее, но, как правило, вы получите хорошие предупреждения с подсказками, как путь импорта должен выглядеть.

+0

Вот и все :) Спасибо – user3013860

+0

Я добавил еще один намек, который может вызвать у вас проблемы. –

+0

Импорт - это еще один вопрос. Я не собирался вставлять каталоги, но в пакетах имя библиотеки не создается непосредственно в папке «packages», оно было создано в разделе «packages//custom_paper_elements», поэтому я пошел туда, куда странно пакет paper_elements мне пришлось дважды входить в папку – user3013860