当前位置: 首页 > 面试题库 >

webpack如何从外部网址导入

解博明
2023-03-14
问题内容

我正在使用webpack来管理我的React应用程序。现在,我想从此URL导入依赖项:

<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=gNO2wKVBNupZfafi0bl0sW3dIKqAHn4l">

传统上,我只是将上述代码放在index.html文件中。但是现在如何让webpack加载此网址?以及我的React JS如何使用该依赖关系?

当我启动webpack-dev-server时,将出现以下错误:

ERROR in Entry module not found: Error: Cannot resolve module 'http://api.map.baidu.com/api'

然后,我使用一点加载程序来加载URL。以下是使用加载程序的JavaScript代码:

import $ from 'jquery'
import React from 'react';
import ReactDOM from 'react-dom';
import load from 'little-loader';

import './main.css';
import './component';
import Search from './search/search'

load('http://api.map.baidu.com/api?v=2.0&ak=gNO2wKVBNupZfafi0bl0sW3dIKqAHn4l', function(err){
    console.log('err:', err);
});

// document.body.appendChild(component());


ReactDOM.render(<Search />, document.getElementById('search'));

但是启动webpack时仍然出现以下错误:

ERROR in Entry module not found: Error: Cannot resolve module 'http://api.map.baidu.com/api' in /Users/yzzhao/dev/react-demo/webpack_demo

问题答案:

将来,您应该可以通过使用动态需求System.import。 Webpack
2
将本地支持它们。

System.import('<url>')
  .then(function() {
    console.log('Loaded!');
  });

如果不想等待,可以使用脚本加载库。

例:

安装:

npm install little-loader --save

用:

import load from 'little-loader';

load('<url>', function(err){

})

或手动执行

function load(url) {
  return new Promise(function(resolve, reject) {
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.async = true;
    script.src = url;
    script.onload = resolve;
    script.onerror = reject;
    document.head.appendChild(script);
  })
}

load('<url>')
  .then(function() {
    console.log('Loaded!');
  })
  .catch(function(err) {
    console.error('Something went wrong!', err);
  })


 类似资料:
  • 问题内容: 我使用以下PHP函数: 每当我在特定服务器上执行此操作时,结果都是空的。当我在其他地方执行此操作时,结果将是页面内容可能是什么。但是,当我在结果为空的服务器上时,请在本地使用该功能- 无需访问外部URL(),它就 可以 工作。 现在,我很确定它与特定的php.ini配置有关。但是我不确定的是 哪 一个。请帮忙。 问题答案: 您正在寻找的设置是。 您有两种不更改php.ini的方法来解决

  • 我正在开发一款需要服务器的android游戏。我们设置了一个git,其中有三个文件夹:客户端、服务器和共享: 客户端包含Android Studio项目。服务器包含一个Eclipse项目,它是我们的服务器和数据库。Shared包含我想在Eclipse和Android Studio项目中使用的java类。 在Eclipse中,我通过将文件导入为“文件系统”,成功地从共享中加载了文件。(它创建了一个包

  • 名为的领域,具有角色和客户端。客户已经 :并且只启用了一个流,即 :http://localhost:8000/* 名为的用户,其域角色为 客户端仅将设置为ON,:http://localhost:8080/*,以及: 第二个领域是第一个领域的国内流离失所者。因此,要登录,用户可以转到登录页面,并选择IDP。 IDP配置如下: :,除了启用选项外,其他都 授权URL、令牌URL等设置为来自endp

  • P.S K8s安装程序(1主+1副)和第三节点(负载均衡器)在同一个子网中。

  • 问题内容: 我正在为Android编写一个小相框应用程序,它使用opengl作为部分UI。这部分需要从flickr获取图像并将其加载到纹理中。我下面的代码大多数时候都可以使用,但是在从连接获取输入流和对流进行位图解码的位之间,它具有Thread.sleep()缺点: 我如何使用sleep()方法来支持具有逻辑意义的内容? 我正在不在模拟器中的三星银河标签上进行测试 问题答案: 这似乎不太理想,但是