Регистрация  |  Вход

JavaScript Remoting for Apex Controllers

Здравствуйте, кто знает чем отличается sayHello2() от sayHello()? Нашел только то что:
1. You can use the $RemoteAction global to automatically resolve the correct namespace, if any, for your remote action.
2. Configuration details for the invocation, if any.

function sayHello(helloTo) {
TestCtrl.sayHello(helloTo, function(result, event){
if(event.status) {
document.getElementById("result").innerHTML = result;
}
});
}

function sayHello2(helloTo) {
Visualforce.remoting.Manager.invokeAction(
'{!$RemoteAction.TestCtrl.sayHello2}',
helloTo,
function(result, event){
if (event.status) {
document.getElementById("result2").innerHTML = result;
}
},
{escape: true}
);
}

Здравствуйте, кто знает чем отличается sayHello2() от sayHello()? Нашел только то что:
1. You can use the $RemoteAction global to automatically resolve the correct namespace, if any, for your remote action.
2. Configuration details for the invocation, if any.

[code]
    function sayHello(helloTo) {
        TestCtrl.sayHello(helloTo, function(result, event){
            if(event.status) {
                document.getElementById("result").innerHTML = result;
            }
        });
    }
    
    function sayHello2(helloTo) {        
        Visualforce.remoting.Manager.invokeAction(
            '{!$RemoteAction.TestCtrl.sayHello2}',
            helloTo,
            function(result, event){
                if (event.status) {
                    document.getElementById("result2").innerHTML = result;
                }
            }, 
            {escape: true}
        );
    }
[/code]

Было как-то столкнулся с данной проблемой. Хоть убей не могу вспомнить в чем был косяк, но уже очень давно использую второй вариант.
Кроме того второй вариант легче использовать для динамического вызова метода. Делаешь один хендлер и просто передаешь туда названия метода + данные.

Было как-то столкнулся с данной проблемой. Хоть убей не могу вспомнить в чем был косяк, но уже очень давно использую второй вариант. 
Кроме того второй вариант легче использовать для динамического вызова метода. Делаешь один хендлер и просто передаешь туда названия метода + данные. 

Обернуть в promise

Обернуть в promise

Вспомнилось еще одно, функцию с $RemoteAction (второй вариант) нельзя положить в Static Resource, она должна быть прямо на странице.

Вспомнилось еще одно, функцию с $RemoteAction (второй вариант) нельзя положить в Static Resource, она должна быть прямо на странице.

Функцию нельзя, можно просто стрингу ложить если надо, с префиксом поностью, но это то еще ипалово
либо делать красоту с иньекциями, зависимостями и прочим, и объявлять переменную на странице, а потом все это куда надо дергать)

Функцию нельзя, можно просто стрингу ложить если надо, с префиксом поностью, но это то еще ипалово
либо делать красоту с иньекциями, зависимостями и прочим, и объявлять переменную на странице, а потом все это куда надо дергать)

Dennis
Static Resource

Зло злостное.
Я живу без них и мне очень хорошо. Максимум картинки и либы туда складываю.
Весь код там где ему и положено быть

[quote="Dennis"]Static Resource[/quote]
Зло злостное. 
Я живу без них и мне очень хорошо. Максимум картинки и либы туда складываю. 
Весь код там где ему и положено быть :D 

Dmitry Shnyrev
либы
много кода как раз и вынесено в либы и чудно все работает.

[quote="Dmitry Shnyrev"]либы[/quote] много кода как раз и вынесено в либы и чудно все работает.

Понятно что оно будет работать чудно - этому ничего не помешает.
Но мы с вами разрабы и мы 99% времени если и сидим за кодом, то с целью его модификации.
Статик ресурсы в этом не сильный помощник.
Если есть возможность выбора между держать код в VF pages/VF Components я выберу их.
Кстати пилим сейчас проект именно таким образом и все кто в проекте участвует очень довольны дев процессом и результатом.

Понятно что оно будет работать чудно - этому ничего не помешает.
Но мы с вами разрабы и мы 99% времени если и сидим за кодом, то с целью его модификации.
Статик ресурсы в этом не сильный помощник. 
Если есть возможность выбора между держать код в VF pages/VF Components я выберу их.
Кстати пилим сейчас проект именно таким образом и все кто в проекте участвует очень довольны дев процессом и результатом.

Dmitry Shnyrev
Статик ресурсы в этом не сильный помощник

Ты просто не умеешь их быстро готовить:)

[quote="Dmitry Shnyrev"]Статик ресурсы в этом не сильный помощник[/quote]

Ты просто не умеешь их быстро готовить:)

я вот юзаю гульп + тайпскрипт + ангуляр первый с половиной + статик ресурсы для всего этого

все там отлчно работаетБ максимум что надо время на деплой ресурса из мм/гульпа в сф

страница сама зато всего пишется в пару строк, а магия происходит уже в черном ящике)
все разбито по структуре и чтото подправить не составит труда, в то время пока тебе надо будет подправить на странице уйдет больше времени на поиск того что надо подправить

ПЫСЫ сейчас ангуляроский апп билдится в около 5к строк, попробуй 5к строк на одной странице разобрать)

я вот юзаю гульп + тайпскрипт + ангуляр первый с половиной + статик ресурсы для всего этого

все там отлчно работаетБ максимум что надо время на деплой ресурса из мм/гульпа в сф

страница сама зато всего пишется в пару строк, а магия происходит уже в черном ящике)
все разбито по структуре и чтото подправить не составит труда, в то время пока тебе надо будет подправить на странице уйдет больше времени на поиск того что надо подправить

ПЫСЫ сейчас ангуляроский апп билдится в около 5к строк, попробуй 5к строк на одной странице разобрать)

Ну каждый раз заливать ресурс по 5мб чтобы поменять одну запятую это сильно.
Во вторых никто не держит весь апп в одной странице я нашел придумал архитектуру на базе VF компонентов в которых складываю Ангуляр компоненты. На самой странице лежит только инициализация апп и подключаются нужные компоненты.

Не спорю - гулп (или другие варианты) + статик ресурсы это хороший вариант - сам по ходу скоро к этому приду так как хочу перейти на TypeScript. Но сейчас с проектом как с обычным SF проектом может начать работать любой школьник и не надо ломать голову с зоопарком скриптов автоматизации, что тоже c другой стороны является плюсом - высокий порог вхождения отфильтровывает школьников :D

Ну каждый раз заливать ресурс по 5мб чтобы поменять одну запятую это сильно.
Во вторых никто не держит весь апп в одной странице :D я нашел придумал архитектуру на базе VF компонентов в которых складываю Ангуляр компоненты. На самой странице лежит только инициализация апп и подключаются нужные компоненты.

Не спорю - гулп (или другие варианты) + статик ресурсы это хороший вариант - сам по ходу скоро к этому приду так как хочу перейти на TypeScript. Но сейчас с проектом как с обычным SF проектом может начать работать любой школьник и не надо ломать голову с зоопарком скриптов автоматизации, что тоже c другой стороны является плюсом :D - высокий порог вхождения отфильтровывает школьников :D

Сорри, сам себе уже противоречю :D

Сорри, сам себе уже противоречю :D