ddd329, вы описали шаблон MVVM, если не ошибаюсь, но это связь модель-представление.
Вам же нужно создать связь модель-логика.
Попробуйте сначала рассмотреть все возможные варианты ветвлений и расчетов.
Например, в вашем случае - в примере - у вас такая логика:
Условия
a== 1
b == 5
c == 7
Сделать:
cBlocked = true
t = f(...некая функция)
То есть можно где-то просто перечислить условия, также где-то перечислить функционал, который будет выполняться, когда эти условия выполнены, удобно использовать указатели на функции.
Без ифов, конечно, не обойтись, но задавать и обрабатывать их будете не вы, а процессор, который пройдет через все ваши условия и проверит, выполняются они или нет.
В самом простейшем исполнении это может быть массив объектов, у которого одно поле - это массив условий, другое поле - ссылка на функцию, которая должна быть выполнена.
Можно запускать процессор каждый раз, когда меняется значение любого из контролов, а можно сделать предобработку - каким-то образом связать каждый контрол с конкретными условиями (то есть чтобы процессор проверять не все из них, а только те, в которых участвует данный контрол (ну или связанная с ним переменная), но это уже для оптимизации).
Если условия сложнее, или есть какие-то промежуточные условия и переходы, то можно добавить ссылки на условия, которые также должны проверять.
Попробуйте начать с построения процессора для самых простейших случаев, постепенно добавляя более сложные условия и переходы.
ой всё, нет. это не бесконечные if-else, это очень ограниченный набор простых логических действий. Это как алфавит в языке, без него не обойтись, вы задаете правила, а что с ними делать, решит бизнес-логика алфавита (метаобъекта в данном случае).
dagy08, тот шаблон, что вы привели, он вообще нерабочий в мобильном варианте.
У меня вот такая фигня видна. При попытке нажать на сэндвич вообще ничего не происходит.
Я задаю все эти вопросы не чтобы пофлудить, а чтобы выяснить, где кроется проблема. Даже если я не смогу помочь напрямую, то может, наведу вас на какие-то мысли.
Поэтому первый вопрос - что вы используете. Вот честно, я не понимаю, как вы используете этот шаблон. Может, он вообще не предназначен для мобильной версии?
Update. Проверила еще раз. Там просто было месиво кнопок вверху и надо было дольше держать. Окей, показывает меню. Но! Он ни разу не одностраничник - он перенаправляет на другую страницу.
Хорошо, а вы точно уверены, что сайт одностраничный? Я посмотрела этот шаблон, некоторые примеры, но они все обычные - по клику осуществляется переход на другую страницу и, следовательно, при новой загрузке меню не видно. Вопрос был именно о том - как вы осуществляете загрузку данных на страницу, если это всего одна страница. Вообще вордпресс не подразумевает одностраничности, это всегда по сути блог с записями, только записи могут быть кастомные, как в вашем случае. У вас уже существуют другие страницы, напримем, банкет, отель, локация и т.д.?
cjkfdt, вы, вероятно, имеете в виду, что НЕ знаете, какой код писать.
Вы как диалог делаете? Через директиву? Может быть, у вас там isolated scope? Тогда ему не будет виден родительский. В этом случае передавайте указатель на функцию через параметр директивы.
Либо у вас на странице два контроллера живут параллельно, не пересекаясь. Тогда функцию надо выносить в родительский или в rootScope и к ней обращаться сооветственно через этот parent.
iamevg_, ну в конечном итоге, да, вызывается именно функция, но синтаксически сама конструкция геттера функцией не является. Мне кажется, мы нашли истину :)
nidalee, а разве я вам рассказала про всю свою жизнь? Всего лишь про небольшой эпизод, окрашенный именно в те краски, которые я описала. Скажу честно, время до было намного хуже, время после - тоже неплохо, но совсем по-другому.
Никита, а про полноценность жизни никто речь не вел. Конечно, какая нафиг полноценная жизнь в студенчестве? Денег вечно нет, времени тоже ни на что не хватает, чем заниматься, не знаешь, метания постоянные... Но она - веселая! У меня никогда не было столько друзей, классных тусовок, совместных проектов (в том числе и бизнес-проектов), как во время студенчества. Мне, конечно, следовало уточнить в моем посте, что я имела в виду, но уж как есть.
Слишком много, закопаетесь :)
Лучше так:
1) Карманный справочник - получить основные сведения
2) Секреты - чуть более расширенные сведения
3) Шаблоны - для того, чтобы понять, как это все правильно использовать
4) Книгу или курсы по какому-нибудь фреймворку или либе, так как на практике только чистый JS уже никто не использует - мои фавориты jquery, angular
Иван, Стефанов, да. Пролистала книгу про секреты. Вроде ничего, много информации, из которой вы потом будете использовать далеко не все, так как примеры в этой книге не являются кроссбраузерными.
Но мне кажется, если у вас есть некоторый опыт в JS, то, конечно, есть и куча вопросов. Так вот, книга Стефанова отвечает на все из них. Главное, она учит, как программировать на JS правильно, чтобы не было потом мучительно больно за кошмарную организацию кода (а в JS организовать код кошмарно легче легкого).