Электронный магазин возвращает «Свойство 'set'/'get' не существует по типу»

Я использую electron-store для демонстрационного электронного проекта. В моем процессе main.ts я пытаюсь инициализировать хранилище и получить простой объект настроек. Это выглядит так:

// main.ts
import Store, { Schema } from 'electron-store';

type settingsType = {
  settings: {
    environment: 'development' | 'test' | 'prod',
    refreshInterval: number,
  }
}

const schema: Schema<settingsType> = {
  settings: {
    type: 'object',
    properties: {
      environment: {
        type: 'string',
        enum: ['development', 'test', 'prod'],
        default: 'development',
      },
      refreshInterval: {
        type: 'number',
        minimum: 10000, // ten seconds
        maximum: 600000, // ten min
        default: 60000, // one min
      }
    },
    default: {},
    required: ['environment', 'refreshInterval'],
  }
}

const store = new Store<settingsType>({schema});

// ERROR: TS2339: Property 'get' does not exist on type 'ElectronStore<settingsType>'.
let settingsStore: settingsType = store.get('settings');

Я думаю, что определяю все так, как ожидалось, но все равно получаю ошибку TS при вызове store.get. Что мне не хватает?

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
2
0
555
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Попробуйте понизить версию electron-store до 8.2.0. npm i [email protected]. В моем случае это помогло.

Привет @kiwibird77, добро пожаловать в StackOverflow! Похоже, что в репозитории электронного магазина открыта проблема с этим вопросом.

Sam Spencer 09.05.2024 21:00

Я заставил его работать с примером tsconfig, упомянутым в этом выпуске, но VScode все еще жалуется на отсутствие свойства. Есть ли обходные пути для этого?

lukedawg 12.07.2024 17:04

Другие вопросы по теме