Как famo.us анализирует свойства поверхности?

У нас есть что-то вроде этого:

properties: {
    backgroundColor: "hsl(" + (i * 360 / 8) + ", 100%, 50%)",
    color: "black",
    lineHeight: window.innerHeight / 2 + 'px',
    textAlign: 'center'
}

Как famo.us анализирует этот объект и вставляет его как встроенный стиль в HTML?

Как мы можем сделать так, чтобы некоторые из этих свойств обновлялись в реальном времени, например, другие компоненты famo.us?


person russo    schedule 21.05.2014    source источник


Ответы (3)


Взгляните на OptionsManager в «ядре», а затем проверьте некоторые из основных объектов, таких как «Движок», которые его используют. OptionsManager испускает события «change», когда вызывается «set (key, value)», поэтому вы можете установить для него обработчики, а затем проверить поле «id», чтобы получить то, что изменилось. В «Двигателе» есть пример, который ищет изменения в «fspCap», которые вы можете использовать в качестве модели. Вы можете получить новое значение из поля «значение» события и обновить свое представление/компонент/виджет в режиме реального времени.

person Dan    schedule 21.05.2014

Взгляните на документ здесь

http://famo.us/docs/0.2.0/core/Surface

Вы можете использовать setProperties (properties), чтобы изменить его на основе событий (ищите Events).

famo.us просто анализирует все на одном уровне, без вложенности. Также textAlign будет text-align в css.

person HP.    schedule 21.05.2014

HP прав, если вы хотите сделать прямой обмен значениями, но я думаю, что вы пытаетесь анимировать, поэтому вам следует проверить Transitionable:

https://famo.us/docs/transitions/Transitionable

https://github.com/Famous/guides/blob/master/dev/2014-04-09-animations.md

person Perry    schedule 12.08.2014