Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Унылого треша тред (https://javascript.ru/forum/offtopic/47728-unylogo-tresha-tred.html)

Maxmaxmaximus7 03.02.2014 20:31

<select ui:controller="Select">

  <option ui:repeat="option in options"
          on:click="selectedIndex = $index">
    {option}
  </option>

</select>



function Select() {

    selectedIndex = 0
    options = ['Рас', 'Два', 'Три', 'Четыре', 'Пятдесятодин']
    value = ( options[selected] ) // вот тут у нас всегда будет выбранное значение

}



в поле value содержится формула (геттер, если не выебываться:p ) который вычислится при обращении к нему, абстрактно, для нас там будет лежать всегда актуальное значение, это называется FRP. больше никаких событий и калбяков.

Maxmaxmaximus7 03.02.2014 20:39

ну а то что this больше полям писать не надо (но можно) означает что мы можем не ебаца больше с
var self = this
если вы понимаете о чем я)

cyber 03.02.2014 20:47

Maxmaxmaximus7, ты так и не ответил на мой вопрос.

Maxmaxmaximus7 03.02.2014 20:50

Цитата:

Сообщение от cyber
ты так и не ответил на мой вопрос.

а да кстати, я так и не понял, ты про ангуляр спрашиваешь?

kobezzza 03.02.2014 20:51

Цитата:

Сообщение от Maxmaxmaximus7 (Сообщение 295653)
ну а то что this больше полям писать не надо (но можно) означает что мы можем не ебаца больше с
var self = this
если вы понимаете о чем я)

Открой для себя Arrow Function:)

cyber 03.02.2014 20:51

Цитата:

Сообщение от Maxmaxmaximus7
а да кстати, я так и не понял, ты про ангуляр спрашиваешь?

вообще

Maxmaxmaximus7 03.02.2014 20:57

Цитата:

Сообщение от kobezzza
Arrow Function

но они не поддерживаются) по этому я открыл для себя

function(){}.bind(this) что убого жи


cyber, я тебя немного не понял, есть методы публичные, есть методы приватные, и есть просто функции служебные, и эти функции используют методы.

подразумевается что все надо писать вот так:


function Cat(){

   this.say = function(){} //публичная
   this._count = function(){} //приватная

   function trim(name){} // служебная 

}



а то что в прототип методы пихать это уже ЛЮДИ придумали) это паттерн, НАТИВНО писать надо так как я выше показал) и нет, соглашения нет. на всякий напомню что если в функции this не требуется то это значит что она работает не с обьектом, следовательно в методы обьекта её пихать не надо.

kobezzza 03.02.2014 20:58

Цитата:

Сообщение от Maxmaxmaximus7 (Сообщение 295667)
но они не поддерживаются) по этому я открыл для себя

function(){}.bind(this) что убого жи

Ну во первых в ФФ уже поддерживаются с версии 22 (сейчас 26), а во вторых: https://github.com/termi/es6-transpiler

Я уже пол года пишу с транслятором и не нарадуюсь:)

Maxmaxmaximus7 03.02.2014 21:02

Цитата:

Сообщение от kobezzza
Я уже пол года пишу с транслятором и не нарадуюсь

и ты предлагаешь чтобы люди писали контроллеры ui и потом прогоняли их через транслятор)?

cyber 03.02.2014 21:04

Цитата:

Сообщение от Maxmaxmaximus7
а то что в прототип методы пихать это уже ЛЮДИ придумали) это паттерн, НАТИВНО писать надо так как я выше показал) и нет, соглашения нет. на всякий напомню что если в функции this не требуется то это значит что она работает не с обьектом, следовательно в методы обьекта её пихать не надо.

ты не совсем понял, функции лучше после метода писать в котором она используеться (если используеться в одном методе) или в низу после всех методов?


Часовой пояс GMT +3, время: 22:20.