PHP форум на ПЫХА.РУ

PHP форум на ПЫХА.РУ

Пыхнуть хотите? => F.A.Q. => Тема начата: CTAPbIu_MABP от 26 Ноябрь, 2009, 01:44:30



Название: MVC в JavaScript
Отправлено: CTAPbIu_MABP от 26 Ноябрь, 2009, 01:44:30
Javascript

var template = '<option value="[value]">[name]</option>', html ='';
$(result.regions).each(function(){
    html  += template.replace(/(?:\[(.*?)\])/g, function(placeholder){
       return result.regions[placeholder.replace(/[^a-z]/g,"")];
    });
});
$('#region_id').append(html);
 

както так


Название: MVC в JavaScript
Отправлено: adw0rd от 26 Ноябрь, 2009, 01:43:10
CTAPbIu_MABP, Странное_Извращение


Название: MVC в JavaScript
Отправлено: CTAPbIu_MABP от 26 Ноябрь, 2009, 01:43:53
adw0rd, MVC по твоему извращение? вторая регулярка правда не в тему


Название: MVC в JavaScript
Отправлено: adw0rd от 26 Ноябрь, 2009, 01:47:56
CTAPbIu_MABP, какое тут нафиг MVC?
Спустя 12 секунд добавил
зы. MVT рулит )


Название: MVC в JavaScript
Отправлено: CTAPbIu_MABP от 26 Ноябрь, 2009, 01:49:25
ну для такого маленького примера это такое маленькое мвц - есть шаблон , данные и логика . это мвц


Название: MVC в JavaScript
Отправлено: CTAPbIu_MABP от 26 Ноябрь, 2009, 04:36:57
Javascript

var template = '<option value="[value]">[name]</option>', html ='';
$(result.regions).each(function(i, val){
    html  += template.replace(/(\[(.*?)\])/g, function($0, $1, $2){
       return val[$2];
    });
});
$('#region_id').append(html);
 

Спасибо Васяц и Адво
Спустя 1 минуту 28 секунд добавил
давайте попиздим о MVC в javascript


Название: MVC в JavaScript
Отправлено: adw0rd от 26 Ноябрь, 2009, 04:37:36
Давайте )


Название: MVC в JavaScript
Отправлено: phpdude от 26 Ноябрь, 2009, 04:41:25
Javascript

var template = '<option value="[value]">[name]</option>', html ='';
$(result.regions).each(function(i, val){
    var row = template;
    for(j in val)
    {
         row = row.replace("[" + j + "]",val[j]);
    }
    html  += row;
});
$('#region_id').append(html);

я бы так сделал, если уж подходить к вмс шаблонизации.
 
но должен естественно приходить массив "объектов" где ключи будут подходящие для замен.


Название: MVC в JavaScript
Отправлено: md5 от 26 Ноябрь, 2009, 04:42:48
разделите тему, пожалуйста
Спустя 6 секунд добавил
господа


Название: MVC в JavaScript
Отправлено: phpdude от 26 Ноябрь, 2009, 04:45:28

разделите тему, пожалуйста
Спустя 6 секунд добавил
господа
+1
Спустя 1 минуту 8 секунд добавил
эта сука разделил тему)


Название: MVC в JavaScript
Отправлено: CTAPbIu_MABP от 26 Ноябрь, 2009, 04:56:00
phpdude, все что у тебя делает цикл у меня делает модификатор G
 
только ты заменешь по пришедшим данным а я по существующим плейсхолдерам
помоему посрать что чем заменять
 
а чтобы небыло '<option value="null">null</option>'
можно поправить return val[$2] || "";


Название: MVC в JavaScript
Отправлено: phpdude от 26 Ноябрь, 2009, 04:58:23
CTAPbIu_MABP, насчет нулла да, это гут, но! если юать твой метод, то мне КАЖДЫЙ РАЗ НАДО ПИСАТЬ НОВУЮ РЕГУЛЯРКУ, а в моем методе, я просто на серверной стороне и в шаблоне меняю набор данных ;) имхо это лучше


Название: MVC в JavaScript
Отправлено: CTAPbIu_MABP от 26 Ноябрь, 2009, 05:23:55
phpdude, сервер не должен знать как реализован шаблон, ему на это посрать он тока отдает данные (модель)
 
и еще твой метод каждый цикл делает replace что не есть гуд если шаблон большой и если случайно на первом круге ты в моделе вернешь плейсхолдер то он заменится на втором а у меня нет
 
Javascript

var
html ='',
template = '<option value="[value]">[name]</option>',
model = [{value:"[name]",name:"[value]"},{value:"name",name:"value"}]
;
 
$(model).each(function(i, val){
    html  += template.replace(/(\[(.*?)\])/g, function($0, $1, $2){
       return val[$2] || "";
    });
});
 
console.log(html);
 


Название: MVC в JavaScript
Отправлено: phpdude от 26 Ноябрь, 2009, 05:32:52
бр %)
 
сплю


Название: MVC в JavaScript
Отправлено: Абырвалг от 26 Ноябрь, 2009, 11:47:43
если шаблонизатор - то типа такого
http://beebole.com/pure/index.html


Название: MVC в JavaScript
Отправлено: CTAPbIu_MABP от 27 Ноябрь, 2009, 02:22:41
Абырвалг, тебе ссылок по теме кинуть?
 
начни с этого http://javascriptmvc.com/


Название: MVC в JavaScript
Отправлено: CTAPbIu_MABP от 27 Ноябрь, 2009, 04:58:25
хаха ))) бенчмарки показывают что в яваскрипте для того чтобы найти символ в 150К текста самый быстрый способ это регулярка
 
http://webreflection.blogspot.com/2009/11/how-to-map-your-code.html


PHP форум на ПЫХА.РУ