Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Новая версия методов #27

Open
eseQ opened this issue Mar 13, 2019 · 4 comments
Open

Новая версия методов #27

eseQ opened this issue Mar 13, 2019 · 4 comments
Labels

Comments

@eseQ
Copy link

eseQ commented Mar 13, 2019

У меня вопрос. Яндекс изменил методы, такие как hit.
Сигнатура hit(url, [title[, referer[, params]]]) устарела

Раньше:

var yaCounterXXXXXX = new Ya.Metrika({id: XXXXXX});
//...
yaCounterXXXXXX.hit('#!contacts', {
    title: 'Контактная информация',
    referer: 'http://example.com/#!main'
});

Теперь:
ym(XXXXXX, 'hit', url[, options])

Насколько я понимаю, в коде этого пакета используется старая версия?

window[trackerInstanceName(id)][methodName]

Есть какие-нибудь задумки на изменение этого?

@narkq
Copy link
Owner

narkq commented Mar 13, 2019

Насколько я понимаю, в коде этого пакета используется старая версия?

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

@narkq narkq added the question label Mar 13, 2019
@eseQ
Copy link
Author

eseQ commented Mar 14, 2019

Хорошо, но ведь он вызывает метод у метрики, т.е. после инициализации объект сохраняется в инстанс window и потом происходит, примерно так: ya.hit, а не ym(XXXXXX, 'hit');
Или я что-то упустил?

@narkq
Copy link
Owner

narkq commented Mar 14, 2019

Вызывает.
Но аргументы-то передает пользователь функции ym, верно?
Если будут переданы аргументы по старой сигнатуре, то и вызов будет по-старому, а если по новой - то и вызов будет по-новому.

Или, может быть, вопрос вовсе не про сигнатуру метода hit, а про инициализацию счетчика?
Если так, то по идее при использовании новой версии счетчика нужно указать version="2" в пропсах YMInitializer, и вроде бы этого должно быть достаточно. Насколько я понимаю, функция ym - это просто обертка, где делается примерно то же самое, что и в коде этого пакета.
Если Вас смущает, что используется объект Ya.Metrika2 напрямую, без обертки ym, можно переделать.

@eseQ
Copy link
Author

eseQ commented Mar 15, 2019

Я, на самом деле, не искал и не смотрел, что такое ym коде метрики.
По моим соображениям методы что были раньше (.hit и тому подобные) теперь не используются, либо по-другому вызываются с помощью ym.
Не будит ли отказа от них в будущем и как это повлияет на библиотеку.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants