Я пытался перескакивать документы на линии, и я вижу функцию set
, когда я делаю set("myString", "hello");
или set("myMap.test", "world");
, но мне было любопытно, что такое инверсия? Я вычислил unset
, но, смотря онлайн в разделе «Свойства» кода «Полимер 1.0 Дарт», я не получал необходимую информацию.Что такое инверсия множества?
Что такое обратный набору, чтобы удалить атрибут? Мой конкретный случай использования, чтобы удалить ключ из карты, unset("myMap.testKey");
Поскольку set
определяется в Polymer_base.dart, я думал, что это будет отдыхать где-то в этом файле, но я не видел ни одного «снята с охраны» или подобное.
проблема заключается в том, что у меня есть вычисленное свойство, которое проверяет количество ключей в карте обслуживания> 0, поэтому в идеале, если нет ключей, он готов к работе. Когда ключ будет разрешен, он удаляется из карты. Даже если я определяю его как неопределенный, ключ будет на карте еще в этом случае, нет? – Fallenreaper
Кажется, это действительный путь. См. Мой обновленный ответ. В противном случае просто используйте 'delete' и' set ("myMap.test", undefined) ', чтобы избавиться от свойства и сообщить об этом Polymer. Если это вызывает проблемы, вы можете попробовать 'notifyPath (путь, значение)' вместо 'set (...)' (после 'delete'). –
undefined - это javascript, я пишу это в Dart, так что, возможно, это будет просто нулевым? Недостатком является то, что даже если установить его на неопределенный, он говорит, что он будет перебирать его по-прежнему, как на карте ... Так что, возможно, мой подход 'isEnabled => myMap.length == 0;' не является нужный подход – Fallenreaper