Я'м пытаясь использовать экспорт и импорт, но это не работает, я получаю сообщение об ошибке
Вот мой HTML-код :
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
@RenderBody()
<script src="~/scripts/user.js"></script>
<script src="~/scripts/main.js"></script>
</body>
</html>
Пользователей.ТС :
export class User {
firstName: string;
lastName: string;
}
главная.ТС
import { User } from "./user";
Здесь также скриншот исключение :
У вас есть несколько вариантов:
Вариант 1: Использовать загрузчик модуль, как Webpack, Browserify, и т. д.
Вариант 2: Если вы просто хотите компилировать *.ТС
к *.на JS без какой-либо модуль импортирует или экспортирует, сеть компилятора параметры.модуль
, чтобы "никто" в вашем tsconfig.формат JSON. Обратите внимание, что вы выиграли'т быть в состоянии модули экспорта/импорта, когда вы установите
компилятора параметры.модуль` чтобы "не то".
попробуйте следующие изменения
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
@RenderBody()
<!-- <script src="~/scripts/user.js"></script> --> <!-- not longer needed -->
<script src="~/scripts/main.js"></script>
</body>
</html>
tsconfig.в JSON
{
"compilerOptions": {
"module": "commonjs",
"target": "es5",
"sourceMap": true,
"outFile": "~/scripts/main.js",
"lib": [
"dom",
"es2015",
"es5",
"es6"
]
}
}
с этой конфигурации ваш выход только один файл JS что можно uglified wunderfull, содержащий все файлы ссылки на главной.ТС. я просто не'т знать, если ~/ работ или если у вас есть, чтобы задать относительный путь к файлу конфигурации, я'м не работает с Linux.
Пользователей.ТС
class User {
firstName: string;
lastName: string;
}
Главная.ТС:
/// <reference path="User.ts" />
// import { User } from "./user"; // not needed if referenced
console.log(new User());
все ссылки на заявления должны быть написаны в начале файла
Машинопись по умолчанию использует узла модуля. Node.js / на CommonJS использует экспорт ключевое слово. Однако, на CommonJS не'т работать в браузере без загрузчик модулей или упаковщик модуль. Следовательно, вам нужно browserify или webpack, чтобы получить это работает в браузере.
Проверить эту ссылку https://www.typescriptlang.org/docs/handbook/gulp.html
Вы также можете установить модуль установка по опции компилятора раздел tsconfig.в JSON:
{ "у компилятора параметры" с: { "в цель" и: "и в ES5 и", на "модуля": "на нет"и } }
Этот работал для меня:
мой-перечисление.ТС
const MyEnum = {
'test': 456,
'Default': 123
}
Компонент.ТС
import * as MyEnum from 'my-enum';