let httpParams = new HttpParams().set('aaa', '111');
httpParams.set('bbb', '222');
Run Code Online (Sandbox Code Playgroud)
为什么这不起作用?它只设置'aaa'而不是'bbb'
另外,我有一个对象{aaa:111,bbb:222}如何在不循环的情况下设置所有值?
更新(这似乎工作,但如何避免循环?)
let httpParams = new HttpParams();
Object.keys(data).forEach(function (key) {
httpParams = httpParams.append(key, data[key]);
});
Run Code Online (Sandbox Code Playgroud) 我有使用TypeScript转换ES7代码的问题.这段代码:
const sizeByColor = {
red: 100,
green: 500,
};
for ( const [ color, size ] of Object.entries(sizeByColor) ) {
console.log(color);
console.log(size);
}
Run Code Online (Sandbox Code Playgroud)
给出错误:
TypeError: Object.entries is not a function
TypeScript v2.0.3
tsconfig.json:
{
"compilerOptions": {
"module": "commonjs",
"target": "es6",
"noImplicitAny": true,
"noEmitOnError": true,
"outDir": "dist",
"allowSyntheticDefaultImports": true,
"experimentalDecorators": true,
"pretty": true,
"lib": [ "es2017" ],
},
"exclude": [
"node_modules"
],
"include": [
"./node_modules/@types/**/*.d.ts",
"./src/**/*.ts"
]
}
Run Code Online (Sandbox Code Playgroud)
我想通过对象迭代Object.entries(),所以我分配了内部定义"lib": [ "es2017" ],但仍然,typescript不允许我转换它.