-
Notifications
You must be signed in to change notification settings - Fork 11
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
5 changed files
with
97 additions
and
18 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,18 +1,50 @@ | ||
# Vue 3 + TypeScript + Vite | ||
# Фронтенд приложения на Vue 3 + TypeScript | ||
|
||
This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more. | ||
Фронтенд (англ. front end, frontend) — презентационная часть web приложения, её пользовательский | ||
интерфейс и связанные с ним компоненты. | ||
|
||
## Recommended IDE Setup | ||
В данном примере используется популярный фраемворк [Vue.js](https://vuejs.org/). Разработка ведется | ||
на языке TypeScript. | ||
|
||
- [VS Code](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin). | ||
## Зависимости | ||
- Node.js v18 – среда исполнения на языке JavaScript/TypeScript | ||
- NPM – консольный менеджер пакетов для установки библиотек (идет в поставке с Node.js) | ||
- Vue.js – фраемворк для разработки фронтенда | ||
- Vite – консольный менеджер для удобства работы с Vue.js | ||
|
||
## Type Support For `.vue` Imports in TS | ||
|
||
TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin) to make the TypeScript language service aware of `.vue` types. | ||
## Разработка | ||
|
||
If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a [Take Over Mode](https://github.com/johnsoncodehk/volar/discussions/471#discussioncomment-1361669) that is more performant. You can enable it by the following steps: | ||
Для удобства разработки в VS Code создан [workspace](../frontend.code-workspace) с преднастроенными | ||
командами и рекомендованными расширениями для работы. | ||
|
||
1. Disable the built-in TypeScript Extension | ||
1. Run `Extensions: Show Built-in Extensions` from VSCode's command palette | ||
2. Find `TypeScript and JavaScript Language Features`, right click and select `Disable (Workspace)` | ||
2. Reload the VSCode window by running `Developer: Reload Window` from the command palette. | ||
Перед началом работы нужно установить зависимости командой | ||
``` | ||
npm install | ||
``` | ||
|
||
Для локального запуска необходимо выполнить команду | ||
``` | ||
npm run dev | ||
``` | ||
|
||
|
||
## Важные замечания по коду | ||
- Приложение предполагает, что вы запускаете его из Твой ФФ. Чтобы имитировать запуск из Твой ФФ: | ||
|
||
1. Зарегистрируйтесь в тестовой среде «Твой ФФ!» по адресу https://app.test.profcomff.com/auth. Подтвердите аккаунт и войдите в пользователя (при необходимости). | ||
|
||
2. Перейдите в панель администрирования https://app.test.profcomff.com/admin. | ||
|
||
3. Нажмите кнопку «скопировать параметры приложения». | ||
|
||
4. Подставьте полученную строку после адреса вашего приложения в браузере | ||
|
||
Код, который обрабатывает данные пользователя из URL находится здесь: https://github.com/profcomff/app-template/blob/1070d4370d37529702d7499baeaf145ba4cd9e62/frontend/src/store/profileStore.ts#L15-L28 | ||
|
||
|
||
- `./src/api/user/AuthApi.ts` и `./src/api/user/UserdataApi.ts` | ||
|
||
в этих файлах хранится код взаимодействия с [Auth API](https://api.profcomff.com/?urls.primaryName=auth) | ||
и [Userdata API](https://api.profcomff.com/?urls.primaryName=userdata), позволяющие получить | ||
информацию о текущем пользователе. |