Ошибка: <tspan>атрибут dy: ожидаемая длина, "NaN".|Ошибка: <path>атрибут d: ожидаемое число, «M, 0,0».|Raphael.js |wheelnav.js - PullRequest
0 голосов
/ 11 декабря 2018

Я пытаюсь создать круговое меню с библиотекой wheelnav.js.
Несмотря на то, что оно работает, я получаю тысячи ошибок в консоли Chrome.

Ошибка: атрибут d: ожидаемое число, «M, 0,0».
Ошибка: атрибут dy: ожидаемая длина, "NaN".

errors from chrome console, raphaeljs

Во время моей отладки мне удалось найти те же причины, которые перечисляют людив этих темах:

https://github.com/DmitryBaranovskiy/raphael/issues/593
https://github.com/DmitryBaranovskiy/raphael/issues/620
https://github.com/fperucic/treant-js/issues/73

Несмотря на то, что эти темы довольно старые, онивсе еще открылся, и я не мог найти там решение моей проблемыЯ даже не мог найти элегантный способ переписать функции Raphaels.

 var icons = {
    'section_sign': '\u00A7\n',
    'key': '\uf084\n',
    'cogs': '\uf085\n',
 };

var items = [ {title: icons.key + 'Security&\nPasswords'},
              {title: icons.cogs + 'Settings&\nDevice'},
              {title: icons.section_sign + 'Rules&\nLaw'} ];

var piemenu = new wheelnav('main_menu');
piemenu.initWheel(items.map(function(item){
                                        return item.title;
                                    }));
piemenu.createWheel();

JSFiddle

Есть идеи?

Спасибо за помощь:)

1 Ответ

0 голосов
/ 12 декабря 2018

wheelnav.js использует модифицированный Raphael.js

https://cdn.jsdelivr.net/npm/wheelnav@1.7.1/js/dist/raphael.min.js

Вот безошибочное JSFiddle: https://jsfiddle.net/npg80xqm

Вы можете найти здесь исправленные ошибки: https://github.com/softwaretailoring/wheelnav/commits/master/js/required/raphael.js

...