У меня есть следующая функция, где я чувствую, что запуск функции иногда вызывается без набора params.name. Я не настолько силен в асинхронных функциях, поэтому мне интересно, может ли это быть так, потому что setName не обязательно возвращается до запуска? И поможет ли он затем вызвать вызов функции внутри тройного в инициализации self.params
?Задайте функциональные параметры асинхронным способом
projectLaunch: function(options) {
var self = this;
if (options.name === null || options.name === "undefined") {
var name = self.setName();
} else {
var name = options.name;
};
self.params = {
name: name
};
launch(self.params);
},
setName = function() {
return encodeBase64(User.name, Project.name)
}
Это часть крупного объекта, а функция projectLaunch вызывается извне.
Ваш отредактированный код не компилируется. Можете ли вы создать минимальный рабочий пример, чтобы мы могли искать вашу проблему. –
это: 'options.name === null || options.name === "undefined" 'должно быть следующим:' options.name === null || options.name === undefined', или просто это: 'options.name == null' (double вместо triple' == ') –
Правильно, это тоже опечатка. Я на самом деле проверяю ложность с помощью опции options.name == null. –