Я хотел бы знать, возможно ли получить доступ к переменной из ClientFunction, или я всегда должен передавать в нее необходимые аргументы?
Я использую ClientFunction TestCafe для выполнения HTTP-запроса (создание нового пользователя). У нас несколько сред, поэтому я не хочу жестко кодировать URL-адрес в запросе.
Если я передам нужный URL-адрес функции, запрос завершится ... но я получил ошибку при попытке доступа к переменной createUserUrl
.
import createUserUrl from '../config.js'.createUserUrl;
const createUserRequest = ClientFunction(userDetails => {
return new Promise(resolve => {
const xhr = new XMLHttpRequest();
xhr.open('POST', createUserUrl, true);
xhr.onload = function() {
resolve(xhr.responseText);
};
// Set headers:
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.send(JSON.stringify(userDetails));
});
});
В результате ReferenceError: reqUrl is not defined
.
В противном случае эта опция работает
const createUserRequest = ClientFunction(reqUrl, userDetails => {
return new Promise(resolve => {
const xhr = new XMLHttpRequest();
xhr.open('POST', reqUrl, true);
xhr.onload = function() {
resolve(xhr.responseText);
};
// Set headers:
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.send(JSON.stringify(userDetails));
});
});
Является ли второй вариант предпочтительным маршрутом или есть способ доступа к переменной из ClientFunction?