node环境下使用import引入外部文件出错

**
由于没有熟知ES6新语法,其中node.js环境下是不支持import的使用。ES6标准发布后,module成为标准,标准的使用是以export指令导出接口,以import引入模块,但是在我们一贯的node模块中,我们采用的是CommonJS规范,使用require引入模块,使用module.exports导出接口。因此详细了解这个问题至关重要,要不然很容易采坑 **
****解决方案参考大神博客:
参考一
参考二:
首先我是在使用Vue导出报表为Excel的组件的时候出现这种错误的
【node环境下使用import引入外部文件出错】node环境下使用import引入外部文件出错
文章图片

引入文件的代码块

import axios from 'axios' import http from './utils/request' import lang from 'element-ui/lib/locale/lang/zh-CN' import VueHtml5Editor from 'vue-html5-editor' import './common/js/variable' import Blob from './excel/Blob' //引入最后一个文件的时候报错Cannot use import statement outside a module

事件使用时的代码块,触发此函数的时候require(’@/excel/Export2Excel’此处调用文件也会报错
exportExcel() { require.ensure([], () => { const { export_json_to_excel } = require('@/excel/Export2Excel'); //文件引用可以使用,但是有报错 const tHeader = ['交货单', '客户代码', '客户名称']; // 上面设置Excel的表格第一行的标题 const filterVal = ['DocNum', 'CardCode', 'CardName']; // 上面的DocNum、CardCode、CardName是tableData里对象的属性 const list = this.tableData; //把data里的tableData存到list const data = https://www.it610.com/article/this.formatJson(filterVal, list); /*console.log(data); */ export_json_to_excel(tHeader, data,'流水报表'); }) },

    推荐阅读