如何在导出中包含导入的模块?

时间:2016-01-25 15:04:26

标签: javascript parse-platform ecmascript-6 vue.js

这是我正在导出的模块。没什么,只是初始化Parse的JavaScript SDK:

mixin.js:

import Parse from 'parse'

var ParseMixin = {
  created: function () {
    Parse.initialize('APP_ID', 'CLIENT_ID')
  }
}

export default ParseMixin

这就是我导入和使用它的方式:

main.js:

import ParseMixin from '../mixins'

export default {
  mixins: [ParseMixin],

  methods: {
    submit () {
      const project = {
        title: this.title,
        content: this.content
      }

      const Obj = Parse.Object.extend(store.class)
      const obj = new Obj()
      obj.save(project).then(() =>
        console.log('Saved.')
      )

      ...

但是,现在我收到了这个错误:

  

错误no-undef“Parse”未定义
  /home/alex/node/cotrib/src/components/ProjectList.js:54:19           const Obj = Parse.Object.extend(store.class)

因为Parse未导入mixin.js

如何修改代码以便导入Parse

1 个答案:

答案 0 :(得分:2)

如果您需要在Parse中引用main.js,那么您应该将其加载到那里:

// main.js
import Parse from 'parse'
import ParseMixin from '../mixins'

每个模块都应该导入其依赖项。

如果您愿意,可以从Parse公开ParseMixin

// mixins.js
export {Parse};

// main.js
import ParseMixin, {Parse} from '../mixins';

但是,默认和命名导出似乎比直接导入依赖项更令人困惑。