如何将此文件导入VueJS?

时间:2018-10-03 06:52:45

标签: javascript node.js vue.js module

我有这个文件,看起来像是用我想包含在VueJS组件中的相当过时的语法编写的。该文件的链接为here

例如,查看文件中的这些行:

var CCC = CCC || {};
CCC.STATIC = CCC.STATIC || {};

CCC.STATIC.TYPE = {
  'TRADE': '0',
  'FEEDNEWS': '1',
  'CURRENT': '2',
  'LOADCOMPLATE': '3',
  'COINPAIRS': '4',
  'CURRENTAGG': '5',
  'TOPLIST': '6',
  'TOPLISTCHANGE': '7',
  'ORDERBOOK': '8',
  'FULLORDERBOOK': '9',
  'ACTIVATION': '10',
  'FULLVOLUME': '11',
  'TRADECATCHUP': '100',
  'NEWSCATCHUP': '101',
  'TRADECATCHUPCOMPLETE': '300',
  'NEWSCATCHUPCOMPLETE': '301'
};

在我的组件中,我需要能够写类似的东西

if (messageType == CCC.STATIC.TYPE.CURRENTAGG) { foobar(message) }

我将如何以一种可以清晰引用其声明的方式将文件导入到我的组件中?

2 个答案:

答案 0 :(得分:1)

添加以下内容作为data.js [在声明之前,我已经删除了分号和CCC的使用,以关闭我的linter:-)]

var CCC = {}
CCC.STATIC = CCC.STATIC || {}

CCC.STATIC.TYPE = {
  'TRADE': '0',
  'FEEDNEWS': '1',
  'CURRENT': '2',
  ...
  ...
  'NEWSCATCHUPCOMPLETE': '301'
}

export default CCC

然后在组件中:

import CCC from './data.js' // adjust the path accordingly
...
...
mounted () {
    ...
    console.log(CCC.STATIC)
    console.log(CCC.STATIC.TYPE.TRADE)
}

请在此处查看“示例”部分:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import

希望这会有所帮助。

答案 1 :(得分:0)

您可以将the original js file的内容复制到应用程序的另一个文件中,例如:embellished-ccc-streamer-utilities.js

然后,作为该新文件的最后一行,您可以添加以下行:

  export default CCC

这基本上会导出CCC对象,以使其在应用程序的其他模块中可用。

实际上,在对原始文件进行了微小修饰后,您可以将其作为普通模块导入,如下所示:

import CCC from './embellished-ccc-streamer-utilities.js'

并根据您的需要使用它,例如:

if (messageType == CCC.STATIC.TYPE.CURRENTAGG) { foobar(message) }