在Vuejs脚本标签内需要JS类

时间:2018-10-12 05:49:28

标签: javascript vue.js vuejs2

我正试图在JS file中加入Vuejs script,但我无法使其正常工作。

JS文件

class Errors {
  constructor() {
    this.errors = {};
  }

  get(field) {
    if (_.has(this.errors, 'errors.' + field)) {
      return this.errors['errors'][field][0];
  }

}

module.export = {
  Errors: Errors
}

Vuejs文件

<script>
  var { Errors } = require('../../classes');

  export default {
    data() {
      return {
        errors: new Errors
      }
    }
  }

控制台错误

  • [Vue warn]: Error in data(): "TypeError: Errors is not a constructor"
  • TypeError: Errors is not a constructor

问题

如何在JS file中正确包含Vuejs script? 还是不可能? 我有什么选择(可能容易实现的选择)?

谢谢。

2 个答案:

答案 0 :(得分:1)

尝试一下:

// your class file
class Error{
  //....
}
export default Error

// vue file
<script>
import Error from 'your-path'
export default {
data() {
    return {
      errors: new Error()
    }
  }
}
</script>

答案 1 :(得分:0)

我相信从您的角度来看,您想加载外部JS文件或库(例如Google Map)或Jquery脚本以与Vue一起使用。

我会推荐这个插件Vue Script2 https://github.com/taoeffect/vue-script2

它对我来说可以加载外部javascript文件,并且非常易于使用。

希望这会有所帮助:)