尝试运行# Helper class to convert a DynamoDB item to JSON.
class DecimalEncoder(json.JSONEncoder):
def default(self, o):
if isinstance(o, decimal.Decimal):
if o % 1 > 0:
return float(o)
else:
return int(o)
return super(DecimalEncoder, self).default(o)
dynamodb = boto3.resource('dynamodb', region_name='us-west-2', endpoint_url="http://localhost:8000")
table = dynamodb.Table('Movies')
title = "The Big New Movie"
year = 2015
response = table.put_item(
Item={
'year': year,
'title': title,
'info': {
'plot':"Nothing happens at all.",
'rating': decimal.Decimal(0)
}
}
)
时,我从Karma收到此错误:
grunt karma:debug
可能是什么原因?在提交一些大的JSON文件后,它开始在一夜之间发生。如果我在没有JSON文件的情况下返回提交,该命令将再次开始工作。
答案 0 :(得分:0)
我在11 11 2017 00:00:00.000:INFO [Chrome 62.0.3202 (Linux 0.0.0)]: Connected on socket /#AAAA-AAAAAAAAAAAAAAA with id 99999999
Chrome 61.0.0000 (Linux 0.0.0) ERROR
Uncaught RangeError: Maximum call stack size exceeded
at http://localhost:9876/context.html
Chrome 61.0.0000 (Linux 0.0.0) ERROR
Uncaught RangeError: Maximum call stack size exceeded
at http://localhost:9876/context.html
Chrome 61.0.0000 (Linux 0.0.0): Executed 0 of 0 ERROR (1.035 secs / 0 secs)
文件中发现了问题:
karma.conf.js
该行使得Karma在HTML页面中包含了JSON文件,并且似乎在我添加的JSON文件数量方面存在问题。解决方案是告诉Karma不要在HTML中包含这些文件,而是将它们作为WebServer提供:
config.set({
...
files: [
...
{ pattern: "path/to/fixtures/**/*.json" },
...
]
相关文档为here:
config.set({
...
files: [
...
{ pattern: "path/to/fixtures/**/*.json", included: false },
...
]
答案 1 :(得分:0)
确保仅分配一次组件变量,最好仅在 beforeEach 前。
component = Fixture.componentInstance -不应在每个描述中给出。