Импортировать моменты с модулями es6 и веб-пакетом. Невозможно назначить свойство только для чтения. - PullRequest
0 голосов
/ 11 мая 2018

Я сделал следующие шаги

npm install moment --save
import moment from "moment"

Когда я хочу импортировать моментальные файлы, я получаю следующую ошибку:

Uncaught TypeError: Cannot assign to read only property 'clone' of object '#<Moment>' (moment.js:3837 )

версия момента: ^ 2.22.1

Я использую webpack 4.

Попытка импортировать таким образом также не удалась с такой же ошибкой:

import moment from "moment/src/moment"

Может кто-нибудь помочь мне?Я действительно не знаю, как решить это.My Webpack Config:

const path = require('path')
const BrowserSyncPlugin = require("browser-sync-webpack-plugin")
var webpack = require('webpack');
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;

module.exports = {
  entry: './src/js/index.js',
  output: {
    path: path.resolve(__dirname, 'static'),
    filename: 'monitor-bundle.js'

  },
  devtool: 'source-map',
  mode: 'development',

  module: {
    rules: [
      {
        test: /\.js$/,
        exclude: /node_modules/,
        use: {
          loader: "babel-loader"
        }
      },

      {
        test: /\.css$/,
      }
    ]
  },
  watch: true,
  plugins: [
    new BrowserSyncPlugin({
      watchOptions: {
        poll: true
      },
        host: "localhost",
        port: "1337",
        proxy: "http://localhost:80/",
        files: ["./static/monitor-bundle.js"],
        open: true,
        reloadDelay: 0,
        reloadDebounce: 0,
        browser: ["chromium", "google chrome"]
    }),
    new BundleAnalyzerPlugin(),
],
};

1 Ответ

0 голосов
/ 15 мая 2018

наконец нашел решение. Проблема в том, что я импортировал другой модуль npm, где нашел следующее:

Object.defineProperty(Array.prototype, "clone", {
    value: function(){
        return this.slice(0)
    },
    enumerable: false,
    writable: false,
})

изменение записываемого false на wirtable true решило проблему

...