Реализация компонентов для создания веб-приложений.
Компоненты реализованы на typescript с помощью react и styled-components;
Использование данного пакета предполагает установку зависимостей: react
& react-dom
;
Использование styled-components
на проект необязательно, так же как и использование typescript
.
Но для того чтобы компоненты работали корректно необходимо установить styled-components
.
$ npm install --save react react-dom
$ npm install --save styled-components
$ npm install --save @salutejs/plasma-asdk @salutejs/plasma-typo
Создайте компонент для подключения глобальных стилей:
import { createGlobalStyle } from 'styled-components';
import { standard } from '@salutejs/plasma-typo';
import { stylesSaluteLight } from '@salutejs/plasma-asdk/themes';
const ThemeStyle = createGlobalStyle(stylesSaluteLight);
const TypoStyle = createGlobalStyle(standard);
export const GlobalStyle = () => (
<>
<ThemeStyle />
<TypoStyle />
</>
);
В корне приложения вызовите компонент глобальных стилей GlobalStyle
:
- Если вы используете Create React App, делайте вызов внутри
src/index.tsx
. - Если вы используете Next.js, создайте файл
pages/_app.tsx
и подключите стили в нем.
Для корректной работы server side rendering приложение нужно обернуть SSRProvider
(доступен в plasma-asdk);
Все компоненты доступны из папки components
или напрямую из пакета:
// App.tsx
import { Button } from '@salutejs/plasma-asdk';
import { tokens } from '@salutejs/plasma-asdk/tokens';
export const App = () => {
return (
<Button>Hello, Plasma!</Button>
<p style={{color: tokens.textAccentAthena}}>
Token usage example
</p>
);
};