Упорядочить js-файл в Angular2

#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>