Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.02.2024, 21:23
Новичок на форуме
Отправить личное сообщение для Steh Посмотреть профиль Найти все сообщения от Steh
 
Регистрация: 02.02.2024
Сообщений: 5

Импорт класса
Привет, дошел до главы с импортом классов, и не получается.

Упростил уже

export default class User {
}

Тесты делаю в php html на локалхосте и поставил от автора тестовый сервак nodejs . Скрипты собирал в bundle.js и тогда они нормально крепились. Но с классом что-то пошло не так.

пробовал

import {User} from 'class.js';
import User from 'class.js';

дает
Cannot use import statement outside a module (at (index):19:1)


из бандла пробовал импортировать разные классы - то же самое

при ставке
<script defer src="bundle.js"></script>

класс not defined

при импорте в package тип Модуль прописан. При вставке скрипта тоже прописывал. Не понимаю, что делать
Ответить с цитированием
  #2 (permalink)  
Старый 02.02.2024, 21:30
Новичок на форуме
Отправить личное сообщение для Steh Посмотреть профиль Найти все сообщения от Steh
 
Регистрация: 02.02.2024
Сообщений: 5

вот в бандл закидывают
index.js
import Employee from './Employee.js';


Employee.js
export default class Employee {
	constructor(name, salary, coeffs) {
		this.name = name;
		this.salary = salary;
		this.coeffs = coeffs;
	}

	getTotal() {
		return this.coeffs.reduce((res, coeff)=> {
			return res + this.salary * coeff;
		}, 0);
	}
}


В абсолютно чистый хтмл закидываю, название файла делаю прописным, пустой класс никак не идет, странно

Последний раз редактировалось Steh, 02.02.2024 в 21:33.
Ответить с цитированием
  #3 (permalink)  
Старый 02.02.2024, 21:56
Новичок на форуме
Отправить личное сообщение для Steh Посмотреть профиль Найти все сообщения от Steh
 
Регистрация: 02.02.2024
Сообщений: 5

5 вариантов путей со скобками и без пробовал, не помогает
с заглавными и прописными именами тоже

Последний раз редактировалось Steh, 02.02.2024 в 22:01.
Ответить с цитированием
  #4 (permalink)  
Старый 02.02.2024, 22:11
Интересующийся
Отправить личное сообщение для roland Посмотреть профиль Найти все сообщения от roland
 
Регистрация: 02.11.2023
Сообщений: 20

Сообщение от Steh Посмотреть сообщение
Cannot use import statement outside a module
Добавьте атрибут "type" со значением "module" для элемента script в html-файле, иначе вы не сможете использовать import.
Ответить с цитированием
  #5 (permalink)  
Старый 02.02.2024, 22:20
Новичок на форуме
Отправить личное сообщение для Steh Посмотреть профиль Найти все сообщения от Steh
 
Регистрация: 02.02.2024
Сообщений: 5

сработало, да, не туда втыкал!

Последний раз редактировалось Steh, 02.02.2024 в 22:22.
Ответить с цитированием
  #6 (permalink)  
Старый 02.02.2024, 22:23
Новичок на форуме
Отправить личное сообщение для Steh Посмотреть профиль Найти все сообщения от Steh
 
Регистрация: 02.02.2024
Сообщений: 5

<script type="module">

import Employee from './Employee.js';

let employee = new Employee('john', 1000, [1.1,
	1.2, 1.3]);
let total = employee.getTotal();
console.log(employee.getTotal());
</script>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отображение имен столбцов класса grid Postgeograph ExtJS 3 11.01.2019 11:40
Добавление custom класса как item класса tab. Unrecognized alias: widget. Postgeograph ExtJS 6 13.12.2018 11:56
Наследование класса WishMaster Общие вопросы Javascript 10 14.10.2015 21:41
Использование классов в JavaScript devote Ваши сайты и скрипты 70 01.02.2013 17:17
Свойства/методы класса TicTac Общие вопросы Javascript 5 03.07.2011 14:53