3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【Yup】moduleが読み込めないと思ったらexports.defaultなくなってた件【formik】

Last updated at Posted at 2018-06-13

yupのバージョン0.24.10.25.1に上げたらimportできなくなった

なぜか

ライブラリのexports.defaultがなくなっていた。
なので、import * from 'module'としてしかimportできない

0.24.1
import Yup from 'yup';

0.25.1
import * as Yup from 'yup';

不慣れな初心者が気づくのに時間かかったので備忘録。

ライブラリソース

0.24.1/index.js
'use strict';

exports.__esModule = true;
exports.ValidationError = exports.addMethod = exports.isSchema = exports.reach = exports.lazy = exports.ref = exports.array = exports.object = exports.date = exports.boolean = exports.bool = exports.number = exports.string = exports.mixed = undefined;

var _mixed = require('./mixed');

var _mixed2 = _interopRequireDefault(_mixed);

var _boolean = require('./boolean');

var _boolean2 = _interopRequireDefault(_boolean);

var _string = require('./string');

var _string2 = _interopRequireDefault(_string);

var _number = require('./number');

var _number2 = _interopRequireDefault(_number);

var _date = require('./date');

var _date2 = _interopRequireDefault(_date);

var _object = require('./object');

var _object2 = _interopRequireDefault(_object);

var _array = require('./array');

var _array2 = _interopRequireDefault(_array);

var _Reference = require('./Reference');

var _Reference2 = _interopRequireDefault(_Reference);

var _Lazy = require('./Lazy');

var _Lazy2 = _interopRequireDefault(_Lazy);

var _ValidationError = require('./ValidationError');

var _ValidationError2 = _interopRequireDefault(_ValidationError);

var _reach = require('./util/reach');

var _reach2 = _interopRequireDefault(_reach);

var _isSchema = require('./util/isSchema');

var _isSchema2 = _interopRequireDefault(_isSchema);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var boolean = _boolean2.default;
var ref = function ref(key, options) {
  return new _Reference2.default(key, options);
};

var lazy = function lazy(fn) {
  return new _Lazy2.default(fn);
};

function addMethod(schemaType, name, fn) {
  if (!schemaType || !(0, _isSchema2.default)(schemaType.prototype)) throw new TypeError('You must provide a yup schema constructor function');

  if (typeof name !== 'string') throw new TypeError('A Method name must be provided');
  if (typeof fn !== 'function') throw new TypeError('Method function must be provided');

  schemaType.prototype[name] = fn;
}

exports.mixed = _mixed2.default;
exports.string = _string2.default;
exports.number = _number2.default;
exports.bool = _boolean2.default;
exports.boolean = boolean;
exports.date = _date2.default;
exports.object = _object2.default;
exports.array = _array2.default;
exports.ref = ref;
exports.lazy = lazy;
exports.reach = _reach2.default;
exports.isSchema = _isSchema2.default;
exports.addMethod = addMethod;
exports.ValidationError = _ValidationError2.default;
exports.default = {
  mixed: _mixed2.default,
  string: _string2.default,
  number: _number2.default,
  bool: _boolean2.default,
  boolean: boolean,
  date: _date2.default,
  object: _object2.default,
  array: _array2.default,
  ref: ref,
  lazy: lazy,
  reach: _reach2.default,
  isSchema: _isSchema2.default,
  addMethod: addMethod,
  ValidationError: _ValidationError2.default
};
0.25.1/index.js
"use strict";

var _interopRequireDefault = require("@babel/runtime/helpers/builtin/interopRequireDefault");

exports.__esModule = true;
exports.addMethod = addMethod;
exports.lazy = exports.ref = exports.boolean = void 0;

var _mixed = _interopRequireDefault(require("./mixed"));

exports.mixed = _mixed.default;

var _boolean = _interopRequireDefault(require("./boolean"));

exports.bool = _boolean.default;

var _string = _interopRequireDefault(require("./string"));

exports.string = _string.default;

var _number = _interopRequireDefault(require("./number"));

exports.number = _number.default;

var _date = _interopRequireDefault(require("./date"));

exports.date = _date.default;

var _object = _interopRequireDefault(require("./object"));

exports.object = _object.default;

var _array = _interopRequireDefault(require("./array"));

exports.array = _array.default;

var _Reference = _interopRequireDefault(require("./Reference"));

var _Lazy = _interopRequireDefault(require("./Lazy"));

var _ValidationError = _interopRequireDefault(require("./ValidationError"));

exports.ValidationError = _ValidationError.default;

var _reach = _interopRequireDefault(require("./util/reach"));

exports.reach = _reach.default;

var _isSchema = _interopRequireDefault(require("./util/isSchema"));

exports.isSchema = _isSchema.default;
var boolean = _boolean.default;
exports.boolean = boolean;

var ref = function ref(key, options) {
  return new _Reference.default(key, options);
};

exports.ref = ref;

var lazy = function lazy(fn) {
  return new _Lazy.default(fn);
};

exports.lazy = lazy;

function addMethod(schemaType, name, fn) {
  if (!schemaType || !(0, _isSchema.default)(schemaType.prototype)) throw new TypeError('You must provide a yup schema constructor function');
  if (typeof name !== 'string') throw new TypeError('A Method name must be provided');
  if (typeof fn !== 'function') throw new TypeError('Method function must be provided');
  schemaType.prototype[name] = fn;
}

まとめ

ライブラリの中身を見るのは大事。

3
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?