Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Обсуждений тред (https://javascript.ru/forum/offtopic/47364-obsuzhdenijj-tred.html)

cyber 22.07.2015 20:10

Просто интересно кто из нас двоих дебил)
и так есть задача, есть пару селектов каждый зависит друг от друга, между ними есть кнопки которые как бы должны менять селекты местами.
Примерный вид моего решение такой
http://jsfiddle.net/50aq75cx/

Я беру делаю класс model, в котором базовый функционал, потом остальные элементы его наследуют и добавляю только метод для возврата запроса на сервер, так как там ангуляр, то все очень просто, я меняю только значения в скоупе)

Решение тимлида:
Написать для каждого селекта отдельный класс, и переставлять элементы на странице.

Вопрос кто из на дибил?

tysonfury2015 22.07.2015 21:58

Цитата:

Сообщение от cyber
Примерный вид моего решение такой

Что-то я запутался в Вашем коде. Застрял вот на этом куске:
function model () {
};

model.prototype.update = function ( data ) {
    var params = this.getParams( data );// вот тут вы получаете параметры, но где они используются? И почему в getParams подается data? Ведь в реализации, которая ниже, никакого приема аргумента не предусматривается?
    
    return new Promise ( function ( resolve, reject ) {
        request( this.getParams() );
    
        function request () {
            resolve();
            // get data from server
        }
    
    } );

};

function X () {
  this.title = "I am X";
  model.call( this );// зачем эта строчка, ведь в model ничего нет?
}

Вопросы в коде.

и, кстати,
X.prototype.getParams = function () {
    return {};
}

Какой смысл в этой ф-ции, если все что она делает -- создает и возвращает объект? Вместо нее можно было бы писать просто, {}, было бы то же самое.

cyber 22.07.2015 22:10

tysonfury2015, это грубо воря псеводо код, я описал структуру)
Естественно, я не вставил бы код с продакшена)
А та функция, проводит магию и возвращает объект на основе внешних параметров, с которыми она шаманит)

tysonfury2015 22.07.2015 22:21

cyber,
Понятно. Что касается ваших разногласий, то тут все не так однозначно. Если, допустим, селектов на странице много, Все они имеют базовый функционал, и их все условно, можно разделить на 2 типа, то можно создать один базовый суперкласс, от него отнаследовать 2 подкласса, и ими уже штамповать селекты. Если инпута только 2, тогда отдельные классы для каждого конечно не нужны.

EmperioAf 22.07.2015 22:22

Цитата:

Сообщение от cyber
Решение тимлида:
Написать для каждого селекта отдельный класс, и переставлять элементы на странице.

Вопрос кто из на дибил?

Для непосвящённого в JS, angular и пр. радости жизни путь тимлида выглядит намного проще.
"Simple made easy"(c)
Ну вот серьёзно, почему в дальнейшем тяжелее будет поддерживать этот проект, если повесить на onclick по кнопке функцию, в которой просто у двух элементов меняются классы местами ?!

cyber 22.07.2015 22:27

Цитата:

Сообщение от EmperioAf
Ну вот серьёзно, почему в дальнейшем тяжелее будет поддерживать этот проект, если повесить на onclick по кнопке функцию, в которой просто у двух элементов меняются классы местами ?!

Потому что там там еще куча фигни между собой, настранице 10 элементов связаных между собой и combox в котором список берется с сервера в зависимости от его позиции, это самое простое что есть

cyber 22.07.2015 22:30

tysonfury2015, там по разному, на некоторых страницах, 2 на некоторых 3-4, все это связанно с минимум одной таблицей, но год можно использовать везде один таким способом

tysonfury2015 22.07.2015 22:32

Цитата:

Сообщение от EmperioAf
у двух элементов меняются классы местами

Вообще-то, это производительность может здорово посадить, хотя если игра стоит свеч -- я не против таких решений.

cyber 22.07.2015 22:36

tysonfury2015, а потом и получается то что я сейчас разргебаю)

cyber 22.07.2015 22:37

И если бы идея была тупая то сомневаюсь что мидл ( единственный кроме меня кто знает нормально js ) поддержал бы меня)

l-liava-l 23.07.2015 02:37

Можно так: http://jsfiddle.net/50aq75cx/7/

cyber 23.07.2015 08:52

l-liava-l, если ты про то что элементы поместитать в массив и менять местами то так и есть у меня, только не много по другому)

рони 23.07.2015 09:24

Цитата:

Сообщение от l-liava-l

зачем надо было грузить angular на http://jsfiddle.net ?

devote 23.07.2015 09:59

Цитата:

Сообщение от рони
зачем надо было грузить angular на http://jsfiddle.net ?

Наверно потому, что, у них слишком старые версии в наличии. Хотя для этого примера пойдут и старые наверно.

рони 23.07.2015 10:12

Цитата:

Сообщение от devote
Наверно потому, что, у них слишком старые версии в наличии. Хотя для этого примера пойдут и старые наверно.

спасибо, верно.
http://jsfiddle.net/50aq75cx/8/

cyber 23.07.2015 11:13

рони, я подключил тут на которой работаю я, я начал с этой и хз что было раньше что нет

cyber 23.07.2015 15:56

Я не перестаю офигевать с этого ... кода )
var val;
if ( browser.name === "ie"  && browser.version === 8 ) {
   val = element[0].innerText;
}
else {
  val =  element[0].textContent;
}

Вроде все норм, НО element это объект jQuery и .. барабанная дробь .. там есть text() и он работает прекрасно в ie8

devote 23.07.2015 16:42

Цитата:

Сообщение от cyber
Я не перестаю офигевать с этого ... кода )

ну что сделаешь, каждый пишет так как знает. Понятно дело что jQuery имеет метод .text() ну а чистый JS:
var val = "textContent" in element ? element.textContent ? element.innerText;

cyber 23.07.2015 16:53

Цитата:

Сообщение от devote
ну что сделаешь, каждый пишет так как знает

Не когда не мог предаставить что может быть такой пздц в коде просто))
Цитата:

Сообщение от devote
ну а чистый JS:

знаю)

l-liava-l 23.07.2015 17:17

cyber,
А не ссыш что чуваки прочтут этот тред и люлей вставят?:D

cyber 23.07.2015 17:43

l-liava-l, я в польше, я могу писать даже с роботы)
Гугл транслейт это нормально не переведет всеравно)

Да и я сомневаюсь, что кто то нашел бы меня по нику, я же не сказал где работаю)

tysonfury2015 23.07.2015 17:53

Цитата:

Сообщение от cyber
я в польше, я могу писать даже с роботы

А как же ты с ними общаешься, по английски чтоли?

cyber 23.07.2015 17:59

Цитата:

Сообщение от tysonfury2015
А как же ты с ними общаешься, по английски чтоли?

Я конечно скажу глуппость, но наверное по польски?

tysonfury2015 23.07.2015 18:08

Цитата:

Сообщение от cyber
но наверное по польски?

ясно:)

Safort 23.07.2015 18:30

Цитата:

Сообщение от cyber (Сообщение 381163)
Я конечно скажу глуппость, но наверное по польски?

Это, наверно, круто знать ~4 языка)

cyber 23.07.2015 18:42

Safort, в моей голове это опа)
Мне сложно говорить на англ, потому что из за что слова в польском бывают охожи я вспонимаю с какого языка слово)

trikadin 23.07.2015 18:45

cyber, да и на русском, мягко говоря, ошибочки есть))

cyber 23.07.2015 18:58

trikadin, я его не когда не учил, я как бы на нём гвлорил но как бы его и не учил)

trikadin 23.07.2015 19:11

Цитата:

Сообщение от cyber
trikadin, я его не когда не учил, я как бы на нём гвлорил но как бы его и не учил)

Да я понимаю)

cyber 23.07.2015 22:20

kobezzza, у меня есть файл templateX.html, в коде есть например переменая
temlpate = require ( "template" ) или //#include template.html чем это можно подключить через gulp что бы нормально превратило в строку, читывая что в html может быть хрень типо
<div data-attr="hello" class='x'></div>

в смысле там и те и те кавычки, есть такой модуль для галпа?

kobezzza 23.07.2015 23:27

Т.е. ты хочешь включить

temlpate = require ( "template" )


Как

temlpate = '<div data-attr="hello" class=\'x\'></div>';


? Если так, то лучшим и самым простым решением будет - webpack, для галпа у него есть плагинчик.

cyber 23.07.2015 23:29

kobezzza, да, какой?

kobezzza 23.07.2015 23:45

Цитата:

Сообщение от cyber (Сообщение 381283)
kobezzza, да, какой?

Эм, gulp-webpack конечно :)

cyber 23.07.2015 23:49

kobezzza, а, туплю)

l-liava-l 24.07.2015 00:17

Цитата:

Если так, то лучшим и самым простым решением будет - webpack browserify, для галпа у него есть плагинчик.
Вебпак вродь тяжелая артиллерия не?

kobezzza 24.07.2015 00:25

Цитата:

Сообщение от l-liava-l (Сообщение 381290)
Вебпак вродь тяжелая артиллерия не?

Не, там всё просто.

nerv_ 24.07.2015 01:09

Цитата:

Сообщение от cyber
да, какой?

http://javascript.ru/forum/server-to...tml#post359686

upd: http://javascript.ru/forum/showthrea...298#post381298

cyber 28.07.2015 10:17

у вас бывала такая хрень в firefox, что изменяешь скрипт, а он не фига не видит изменений? ( кэш естественно выключен )

Deff 28.07.2015 11:05

Цитата:

Сообщение от cyber
что изменяешь скрипт, а он не фига не видит изменений

В Опере 12.6 подобная хрень была. Чот там капсулировалось...

cyber 29.07.2015 10:39

Только что смотрел на гитхабе соурсы npm, и думаю "они че употоротые папку node_modules загружать на гитхаб, они что не могут заюзать npm"
Через 10 секунд я вспомнил что это репзиторий npm:lol:


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