Показать сообщение отдельно
  #1 (permalink)  
Старый 10.01.2024, 18:07
Аватар для borus
Кандидат Javascript-наук
Отправить личное сообщение для borus Посмотреть профиль Найти все сообщения от borus
 
Регистрация: 07.12.2012
Сообщений: 147

Импортируемая функция не определена
Здравствуйте!

Есть вот такой маленький index.html, в котором импортируются функции из модулей:
<!DOCTYPE html>
<html lang="en">
<head>
    <title>TODO</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/css/bootstrap.min.css" integrity="sha384-TX8t27EcRE3e/ihU7zmQxVncDAy5uIKz4rEkgIXeMed4M0jlfIDPvg6uqKI2xXr2" crossorigin="anonymous">
    </head>
<body>
    <div class="container mb-5">
        <nav class="nav">
            <a href="index.html" class="nav-link">Мои дела</a>
            <a href="dad.html" class="nav-link">Дела папы</a>
            <a href="mom.html" class="nav-link">Дела мамы</a>
        </nav>
    </div>
    <div id="todo-app" class="container">
    </div>
    <script type="module">
        import { createTodoApp } from './todo-app/view.js';
        let bLocaleStorage = JSON.parse(localStorage.getItem('bLocaleStorage'));
        if(bLocaleStorage || !bLocaleStorage) {
          let {getWorkList, saveWorkList} = import('./todo-app/localmodel.js');
        }
        else {
          let {getWorkList, saveWorkList} = import('./todo-app/APImodel.js');
        }
        const owner = 'my';
        (async () =>{
          let workList = getWorkList(owner);
          createTodoApp(document.getElementById("todo-app")
            , { title: 'Мои дела',
                owner,
                workList,
                saveWorkList,
                changeWork,
                deleteWork
              }
          );
        })();

    </script>
</body>
</html>
При загрузке это страницы вижу, что ветвь с подключением функции из файла(модуля) todo-app/localmodel.js отрабатывает.
Вот содержание файла-модуля:
[JS]
//получение имеющегося списка дел:
function getWorkList(owner){
  return JSON.parse(localStorage.getItem(owner));
}

//запись нового дела
function saveWorkList(owner, works){
  localStorage.setItem(owner, JSON.stringify(works));
}

//удаление дела

//переключение статуса дела

//экспортируем методы
export { getWorkList, saveWorkList };
[/JS]

При загрузке Index.html в консоли вижу ошибку "Uncaught (in promise) ReferenceError: getWorkList is not defined" на строке
let workList = getWorkList(owner);

Почему такое происходит, скажите, пожалуйста?
Ответить с цитированием