开发者社区> 问答> 正文

react项目中引入dingtalk-jsapi,提示找不到polyfills

ERROR in ./~/dingtalk-jsapi/lib/polyfills/es6Promise.js
Module not found: Error: Can't resolve 'promise-polyfill/dist/polyfill' in 'D:\workspace\project\node_modules\dingtalk-jsapi\lib\polyfills'

展开
收起
zof2fdvcv72tg 2024-01-03 15:56:50 150 0
1 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    这个问题是因为在引入dingtalk-jsapi时,找不到polyfills。你可以尝试以下方法解决这个问题:

    1. 确保你已经安装了promise-polyfill。如果没有安装,可以通过npm或yarn进行安装:
    npm install promise-polyfill --save
    

    或者

    yarn add promise-polyfill
    
    1. 如果你已经安装了promise-polyfill,但仍然出现这个问题,那么可能是因为你的项目配置有问题。请检查你的webpack.config.js文件,确保resolve.alias配置正确。例如:
    module.exports = {
      // ...
      resolve: {
        alias: {
          'promise-polyfill': 'promise-polyfill/dist/polyfill',
        },
      },
    };
    
    1. 如果以上方法都无法解决问题,你可以尝试使用babel-plugin-transform-runtime插件来自动引入promise-polyfill。首先安装插件:
    npm install babel-plugin-transform-runtime --save-dev
    

    然后在你的.babelrc文件中添加以下配置:

    {
      "plugins": [
        ["transform-runtime", {
          "corejs": 3
        }]
      ]
    }
    

    最后,确保你的项目中使用了Babel进行代码转换。

    2024-01-03 21:40:01
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
利用编译将 Vue 组件转成 React 组件 立即下载
React Native 全量化实践 立即下载
React在大型后台管理项目中的工程实践 立即下载