#angular
#angular
Вопрос:
Я прочитал все руководство по стилю Angular.
Это хорошая отправная точка, но ей не хватает некоторых моментов.
Например: куда мы должны поместить сгенерированные файлы javascript? По умолчанию tsc помещает файлы в ту же папку .ts
, что и файлы, но таким образом папка проекта становится очень грязной.
Я создал wwwroot
папку «», в которую я помещаю сгенерированный js, но мне это не нравится, потому что мне также приходится копировать .css and
.html
файл в wwwroot
.
Есть ли лучшая практика?
Большое спасибо
Ответ №1:
Если вы используете angular 2 и у вас возникли проблемы с настройкой, я бы рекомендовал использовать Angular CLI. Это позволит вам абстрагироваться от многого из этого и быстро начать кодирование. Это идеальный вариант для начала, так что изучите его ;).
Чтобы ответить на ваш вопрос. Что я всегда делаю, так это использую файл tsconfig.json, чтобы определить, как работает мой компилятор typescript. Здесь я определяю свой каталог out, в котором компилируются файлы typescript.
{
"compilerOptions": {
"target": "es5",
"noImplicitAny": false,
"removeComments": true,
"sourceMap": true,
"module": "es2015",
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"moduleResolution": "node",
"outDir": "out",
"types": [
"es6-shim",
"jasmine",
"lodash",
"node",
"toastr"
]
},
"exclude": [
"out",
"node_modules",
"dist",
"reports"
],
"version": "2.0.2"
}
Это весь файл одного из моих конфигов. Смотрите опцию outDir.
Комментарии:
1. Привет, KwintenP. Я также использую свойство outDir. Вопрос также сосредоточен на файлах .css и .html. Ваш каталог «out» содержит сгенерированные js-файлы, но как насчет .html и .css компонентов?
2. Для работы с css-файлами и HTML-файлами я предпочитаю использовать Webpack. Webpack — это модульный пакет, который дает вам возможность объединить все ваше приложение в один пакет, который можно запускать в браузере. Angular cli также использует webpack под капотом, так что проверьте это.
Ответ №2:
Я помещаю свои пользовательские js-файлы в каталог js, который я помещаю в папку assets. Таким образом, он доступен приложению при компиляции и подготовке к распространению или производству.
Итак, ваша файловая структура должна выглядеть следующим образом,
assets/js/custom.js
Затем в вашем src/index.html
файле вы можете сделать это,
<script src="assets/js/custom.js"></script>