- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我正在使用 webpack,我正在使用 require 来引入一些包。我有两个包:package1.js 和 package2.js。 package1.js 只是简单地创建一个具有一些属性的对象,称为 pkg1
。 package2 是一个 javascript 文件,其中包含一个扩展 package1 的自执行函数。例如
package2.js:
!function () {
pkg1.prototype.newFunction = function {return "foo"};
}()
我正在尝试以下列方式将这两者都要求到一个新脚本中:
require('package1')
require('package2')
当我这样做时,出现错误:
Uncaught TypeError: pkg1.newFunction is not a function
我认为这是因为 Javascripts 异步加载:require(package2)
在 require('package1')
之前执行。我的证据是,当我执行以下操作时,我不会收到错误消息:
require('package1')
!function () {
pkg1.prototype.newFunction = function {return "foo"};
}()
不过这样很乱,我想用require。我将如何着手完成这项工作?
编辑:具体示例
(function() {
L.HexbinLayer = L.Class.extend({
...
})()
因此,至少根据我的理解,放入 require(leaflet-d3-plugin)
应该会导致此脚本执行并扩展 L
,它由要求('传单')
同样,d3-hexbin-v0开始于:
!function(){d3.hexbin=function(){
...
}}()
同样,我读到这个的方式是这个脚本简单地添加一个 .hexbin
方法到 d3
。
现在如果我只是写 html,我会把这些不同的东西放在不同的脚本标签中,这样就可以了:
<script src="http://d3js.org/d3.v3.min.js"></script>
<script src="http://d3js.org/d3.hexbin.v0.min.js"></script>
或
<script src="http://cdn.leafletjs.com/leaflet-0.7/leaflet.js"></script>
<script src="static/leaflet-d3.min.js" charset="utf-8"></script>
但是因为我使用的是 webpack,所以我应该能够在使用 npm 安装这些库之后需要和/或导入这些库,或者如果我只是将这些脚本中的 .js 复制到某个目录然后 从那个位置要求
他们。不幸的是,这似乎不起作用,除非我将这些模块中的 .js 直接复制到我正在编写的任何脚本中。这是我要避免的。
例如
import * as d3 from 'd3'; \\I'm using d3 v4 here.
require('/resources/d3-hexbin.min.js')
结果:
Uncaught TypeError: d3.hexbin is not a function
最佳答案
Webpack 同步加载它,但每个文件都有自己的范围。
这就是为什么在你的声明中
import * as d3 from 'd3'; \\I'm using d3 v4 here.
require('/resources/d3-hexbin.min.js')
你的第二个没有找到 d3
变量。
可以使用ProvidePlugin
来解决:
webpack.config.js
plugins: [
new webpack.ProvidePlugin({
d3: 'd3'
}),
... //other plugins
这样 d3
将在整个应用程序中可用。
实现它的替代方法是使用以下方法:
import * as d3 from 'd3';
window.d3 = d3;
require('./d3.hexbin.v0.min.js')
希望对你有帮助!
关于javascript - Webpack 中的同步需求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39460793/
您能否提供有关网站社交网络(例如 Facebook)类型(功能性、非功能性和用户要求)要求的示例? 提前谢谢 最佳答案 以下是 Facebook 应具备的要求的一些示例。然而,值得一提的是:对于每种类
我需要在另一个 Java 项目的 liferay 模块项目中使用一些类。我正在使用 gradle,当我部署应用程序时,即使 gradle 编译了我的 jar 文件,我也会收到 Unresolved 需
我最近发现了类似于button.setText(“Hello World”);的代码行如果您按如下方式分配按钮,则 onCreate() 方法中将抛出 nullPointerException: B
我有一些基于成本的供应链管理代码,其中供应尝试满足需求,但这仅在供应大于需求时才有效。有什么方法可以优化它以两种方式工作(即当 supply > demand 和 supply = model.dem
好吧,我快想多了。有没有一种方法可以组合接口(interface)和属性,使实现类中的特性属性满足接口(interface)契约? 在我的应用程序中,我想显示一个事件列表,它是系统中事件的集合,例如新
我想创建一个模型,在每个步骤中预测每个产品在多周内的 future 需求(预测每个产品明年的每周需求) 我有一些小尺寸(大约 100-200 条记录)的 csv。 这里有关 CSV 列的信息:- 第一
我有一个包含我所有依赖项的 requirements.txt 文件,但它没有被正确处理: pip install -r requirements.txt 后,我得到以下 pip freeze: arg
我对 Java EE 应用程序的性能测量(CPU 和磁盘 I/O 需求)很感兴趣。 对于CPU 我已经想出了如何测量每个方法调用的CPU 需求。通过在每个方法的开始和结束时调用 java.lang.m
如何获取从 yaml 文件创建的管道的需求? yaml 文件包含需求: ... jobs: - job: my_job displayName: My Job pool: name:
我的目标: 构建一个 AngularJS 服务 (MapService),它初始化 (MapService.initMap()) 第 3 方控件 (Esri ArcGIS Map) 并返回对我的 ma
我在我的一个项目中使用了 redis,并且有一个带有 redis = Redis.new 的初始化器并使用了 redis gem。问题是,如果 Redis 没有运行,我将无法执行简单的数据库迁移之类的
如果我们有三个模块名称 A、B 和 C,那么模块 A 需要 B 和 B 需要 C:这个调用会产生什么效果? var A = proxyquire('A', {'C': mockedModule}) 模
我正在为 Liferay 7 开发一些功能。我知道仍处于 beta 版本,但我在 OSGi 包依赖项方面遇到了一些麻烦。当我尝试部署服务项目时,部署时发生错误 Unresolved requireme
我有一个 list 文件 partials.js,其中包含: //= require_tree ./partials 然后 ./partials/ 中的每个咖啡文件都包含以下内容: $ -> #
在 brew 中有没有一种方法或特殊命令可以将安装的包卡住到 requirements.txt 文件中,就像在 python 中使用 pip 一样?然后从该文件快速重新安装它们? 最佳答案 使用Hom
我正在尝试在 g1 GKE 实例(g1 实例有 1 个 vCPU,或 1000 毫核)中运行一个小型应用程序,并且在调度 pod 时遇到 CPU 请求限制问题。有 4 个 pod,每个都是应用程序的不
我们计划为我们的 C++ 代码建立柯南存储库。我们只想向开发人员公开依赖项列表 (lib/version@user/channel),而不是我们放在 conanfile.py 中的逻辑检查。这个包装器
我正在尝试研究 Varnish 。 我的问题是。我确实有一个主要请求/响应,我想使用 Varnish 缓存它。 html结构内部有ESI标签。我想要很多。一个标签具有较长的 ttl,其他标签则具有 t
我有一个在运行时或编译/链接时连接接口(interface)的问题或最佳方法。对于我的嵌入式项目,设备驱动程序和 I/O 具有需要绑定(bind)(即粘合)到其相应接口(interface)依赖项的接
我有一个我创建的协议(protocol)(在 Swift 4.2 中),它的要求之一是一个与协议(protocol)本身类型相同的属性。 例如,我有一个这样定义的协议(protocol): proto
我是一名优秀的程序员,十分优秀!