Сценарий приложений — ООП — запуск метода класса на боковой панели HTML

#javascript #oop #google-apps-script

#javascript #ооп #google-apps-script

Вопрос:

Как вызвать метод класса в шаблоне боковой панели apps script HTML?

Файл сценария приложений

 class SampleClass {
  constructor(){
    this.x = 100;
    this.y = 200;
  }
  
  loadSomeData(){
    Logger.log('some data loaded'); 
    return 'data';
  }
}//class ended

function functionOutsideTheClass(){
  Logger.log('function outside the class'); 
}
  

Файл боковой панели HTML JS

 $(function(){
  //load 
  google.script.run.withSuccessHandler(onComplete).functionOutsideTheClass();
  // I want to run loadSomeData() function here
});

//callback
var onComplete = function(data){
  console.log(data);
}
  

Мы можем запустить функцию functionOutsideTheClass() в HTML JS. Таким же образом можно ли запустить функцию loadSomeData() внутри JS или какой-либо обходной путь для нее?

Комментарии:

1. Вы даже не можете вызвать loadSomeData() вне класса без вызова new SampleClass

2. Привет, я согласен вызвать новый класс образца, но возможно ли вызвать loadSomeData() вместе с google.script.run.withSuccessHandler(onComplete) …. ?

3. Если вы предоставляете его как функцию, да. const loadSomeDataFunc = ()=> new SampleClass().loadSomeData()

Ответ №1:

Представить его как функцию:

 const loadSomeDataFunc = ()=> new SampleClass().loadSomeData()