Предотвратить преобразование даты и времени в электрон - PullRequest
0 голосов
/ 03 июля 2019

Я использую Electron (пробовал и 2.x, и 5.0.x) вместе с Sequelize / Tedious для разработки настольного приложения. При извлечении данных из mssql оно всегда конвертирует поля DATETIME, добавляя смещение локального часового пояса (например, +04: 00)

.

Поле mssql DATETIME не содержит информацию о часовом поясе, кажется, что Electron считает его временем UTC, как его предотвратить? Что странно, когда я использую Sequelize / Tedious без Electron, все в порядке, но в Electron, независимо от того, какие параметры введены в dialectOptions, он не будет работать, в том числе useUTC / timezone / typeCast / process.env.TZ, Единственное решение, которое работает, это переключение часового пояса моего компьютера на UTC.

var conn = new Sequelize('xxx', 'xxx', 'xxx', {
  host: '127.0.0.1',
  port: 1433,
  dialect: 'mssql',
  dialectOptions: {
    encrypt: false,
    timezone: '+04:00'
  },
  timezone: '+04:00',
  logging: false,
  define: {
    freezeTableName: true,
    charset: 'utf8',
    timestamps: false
  }
});
...