【问题标题】:Importing js library that doesn't have exports导入没有导出的 js 库
【发布时间】:2017-05-17 19:00:12
【问题描述】:

我的 node_modules 文件夹中有一个 ngDraggable.js 库,它必须作为依赖项包含,如下所示:

import draggable from 'ngDraggable';

ngDraggable.js 没有导出,所以我使用了一些我找不到的 SO 答案中的解决方法。建议使用具有相同文件夹的 index.js 文件,该文件将导入 ngDraggable.js 并将其导出。由于某种原因,这个文件丢失了,我不记得有两行代码这样做了:(我试过了,但它根本不起作用:

import ngDraggable from './ngDraggable';
export default angular.module('ngDraggable', [ngDraggable]);

错误: 未捕获的错误:[$injector:modulerr] 无法实例化模块应用程序,原因是: 错误:[$injector:modulerr] 无法实例化模块 {"default":{"default":{"_invokeQueue":[],"_configBlocks":[],"_runBlocks":[],"requires":[{ }],"name":"ngDraggable"}}} 由于: 错误:[ng:areq] 参数“模块”不是函数,得到对象 http://errors.angularjs.org/1.6.1/ng/areq?p0=module&p1=not%20a%20function%2C%20got%20Objecthttp://localhost:3000/index.js:17216:12

“app”是代表应用程序的主模块,“默认”必须是导入 ngDraggable 并将其公开给主模块的模块

【问题讨论】:

    标签: javascript angularjs


    【解决方案1】:

    我找到了丢失文件的副本。这是代码sn-p

    require('./ngDraggable.js');
    module.exports = 'ngDraggable';
    

    【讨论】:

      【解决方案2】:

      你可以试试

      import * as draggable from 'ngDraggable';
      

      【讨论】:

      • 我怀疑问题出在第二行,它负责导出..
      猜你喜欢
      • 2020-03-27
      • 1970-01-01
      • 2018-07-23
      • 2018-10-16
      • 2015-09-08
      • 2018-10-15
      • 2020-10-19
      • 2018-07-17
      • 2020-12-10
      相关资源
      最近更新 更多