gpt4 book ai didi

javascript - 使用 requirejs 加载 : long, ByteBuffer 和 ProtoBuff

转载 作者:行者123 更新时间:2023-12-03 05:56:12 25 4
gpt4 key购买 nike

正在开发一个使用 ProtoBuff 获取其内容的项目。通过在 HTML 中加载 JavaScript 使其工作一次。现在重构为使用 requirejs 来加载脚本。但是当我尝试使用脚本时,它给出一个错误,告诉我脚本未加载。

  • Require.js 已加载到index.html
  • Bower 用于管理依赖项。

我很确定我在这里遗漏了一件(简单的)事情,希望有人能提供帮助。

requirejs.config({
long : "long",
ByteBuffer : "ByteBuffer",
ProtoBuf : "ProtoBuf"
});

requirejs([ "long", "ByteBuffer", "ProtoBuf" ],
function( long, ByteBuffer, ProtoBuf ) {
}); ​

文件 long.js、ByteBuffer.js 和 ProtoBuf.js 都与调用此文件的 App.js 位于同一个映射中。

*虽然这个question about requirejs and ByteBuffer看起来很有希望,我想我在这里遗漏了一些东西。

这确实有效,这些文件中的函数可以在其余范围内访问:

requirejs([ "otherPage", "differentPage" ], 
function( util ) {
});

最佳答案

您需要确保您已正确连接 requirejs 并且已加载相关的原型(prototype)库。

您可以使用 Bower 来管理依赖项。安装bower

bower install long byteBuffer protobuf requirejs-text requirejs-proto

最终的代码如下所示:

require.config({
paths: {
'Long': '../../bower_components/long/dist/Long',
'ByteBuffer': '../../bower_components/byteBuffer/dist/ByteBufferAB',
'ProtoBuf': '../../bower_components/protobuf/dist/ProtoBuf',
'text': '../../bower_components/requirejs-text/text',
'proto': '../../bower_components/requirejs-proto/proto'
},
proto: {
ext: 'proto',
convertFieldsToCamelCase: false,
populateAccessors: true
}
});

require(['proto!test'], function(builder) {
var pack = builder.build('pack');
var Message1 = builder.build('pack.Message1');
});

require(['proto!test::pack.Message1', 'proto!test::pack.Message2'], function(Message1, Message2) {
...
});

来自https://www.npmjs.com/package/requirejs-proto的一些代码

关于javascript - 使用 requirejs 加载 : long, ByteBuffer 和 ProtoBuff,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39920502/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com