diff --git a/.eslintrc b/.eslintrc index 21c5e55df..b0cccffd0 100644 --- a/.eslintrc +++ b/.eslintrc @@ -205,7 +205,7 @@ "no-var": 1, "prefer-const": 1, "prefer-destructuring": 1, - "prefer-spread": 1, + "prefer-spread": 0, "prefer-template": 1, "require-yield": 2, "rest-spread-spacing": 1, diff --git a/src/index.js b/src/index.js index fa48e3f5c..f00465e0e 100644 --- a/src/index.js +++ b/src/index.js @@ -70,6 +70,19 @@ class Artplayer extends Emitter { }; } + static use(plugin) { + const installedPlugins = this.plugins || (this.plugins = []); + if (installedPlugins.indexOf(plugin) > -1) { + return this; + } + + const args = Array.from(arguments).slice(1); + args.unshift(this); + plugin.apply(null, args); + installedPlugins.push(plugin); + return this; + } + init() { this.refs = { container: this.option.container