在带有 browserify 的浏览器中使用 aws-sdk 的问题
Problems using aws-sdk in the browser with browserify
我正在开发使用 aws-sdk 的基于浏览器的应用程序。我正在为我的应用程序代码使用 browserify,但还没有弄清楚如何将 aws 引入其中。我尝试了几种不同的方法:
//MyApp.js - Take 1 using downloaded minified version
var AWS = require ('./aws-sdk.min.js');
...
AWS.config.region='us-east-2';
...
导致 无法设置未定义的 属性 'region'
我猜这是行不通的,因为 browserify 不解析缩小的代码。
//MyApp.js - Take 2 using downloaded development version
var AWS = require ('./aws-sdk.js');
这不编译。 Browserify 报告 错误:找不到模块 '../lib/core'.
是否有我遗漏的技巧?
当我在浏览器中使用 AWS 时,我根据需要的服务设置了区域,例如:
new AWS.EC2({apiVersion: '2016-11-15', credentials, region})
所以这让我想知道,也许你下载的版本是封装的,没有为 browserify 暴露任何东西。
首先我在浏览器中测试版本如下:
console.log(AWS)
<script src="https://cdnjs.cloudflare.com/ajax/libs/aws-sdk/2.184.0/aws-sdk.min.js"></script>
一切看起来都不错,所以我继续在 browserify 上进行测试。
当您这样做时,您正在重新分配 AWS 全局变量:
var AWS = require ('./aws-sdk.min.js');
但是你已经捆绑了,所以你很好,你需要做的是:
require ('./aws-sdk.min.js');
// And then use it happily
AWS.config.region='us-east-2';
不重新分配 AWS 全局变量
我正在开发使用 aws-sdk 的基于浏览器的应用程序。我正在为我的应用程序代码使用 browserify,但还没有弄清楚如何将 aws 引入其中。我尝试了几种不同的方法:
//MyApp.js - Take 1 using downloaded minified version
var AWS = require ('./aws-sdk.min.js');
...
AWS.config.region='us-east-2';
...
导致 无法设置未定义的 属性 'region'
我猜这是行不通的,因为 browserify 不解析缩小的代码。
//MyApp.js - Take 2 using downloaded development version
var AWS = require ('./aws-sdk.js');
这不编译。 Browserify 报告 错误:找不到模块 '../lib/core'.
是否有我遗漏的技巧?
当我在浏览器中使用 AWS 时,我根据需要的服务设置了区域,例如:
new AWS.EC2({apiVersion: '2016-11-15', credentials, region})
所以这让我想知道,也许你下载的版本是封装的,没有为 browserify 暴露任何东西。
首先我在浏览器中测试版本如下:
console.log(AWS)
<script src="https://cdnjs.cloudflare.com/ajax/libs/aws-sdk/2.184.0/aws-sdk.min.js"></script>
一切看起来都不错,所以我继续在 browserify 上进行测试。
当您这样做时,您正在重新分配 AWS 全局变量:
var AWS = require ('./aws-sdk.min.js');
但是你已经捆绑了,所以你很好,你需要做的是:
require ('./aws-sdk.min.js');
// And then use it happily
AWS.config.region='us-east-2';
不重新分配 AWS 全局变量