我需要将下面的Nodejs代码转换为TypeScript。如果有人可以帮助我解决这个问题,或者对如何实现这一想法有所帮助,我将感到非常高兴。我做了各种各样的尝试,但是没有用。
var https = require('https');
var querystring = require('querystring');
function request(callback) {
var path='/v1/payments';
var data = querystring.stringify( {
'authentication.userId' : '52542LesMor',
'authentication.password' : '123456',
'AuthId' : '9965652',
'amount' : '30',
'currency' : 'ZAR',
'paymentBrand' : 'VISA',
'paymentType' : 'DB',
'card.number' : '8500000040000000',
});
var options = {
port: 5986,
host: 'me.leslie.com',
path: path,
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length': data.length
}
};
var postRequest = https.request(options, function(res) {
res.setEncoding('utf8');
res.on('data', function (chunk) {
jsonRes = JSON.parse(chunk);
return callback(jsonRes);
});
});
postRequest.write(data);
postRequest.end();
}
request(function(responseData) {
console.log(responseData);
});
答案 0 :(得分:1)
从JavaScript转换为TypeScript可以很轻松。
我在node
中使用TypeScript遇到的任何问题通常都是节点API
,modules
和build-tools
的性质(我也想吃蛋糕)。
所以TypeScript并不是真正的问题
没有更具体的信息,我想我会在typescriptlang playground
copypasta
的乐趣。
const https = require('https');
const querystring = require('querystring');
request(callback: () => {}) {
const path = '/v1/payments';
const data = querystring.stringify({
'authentication.userId': '52542LesMor',
'authentication.password': '123456',
'AuthId': '9965652',
'amount': '30',
'currency': 'ZAR',
'paymentBrand': 'VISA',
'paymentType': 'DB',
'card.number': '8500000040000000',
});
const options = {
port: 5986,
host: 'me.leslie.com',
path: path,
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length': data.length
}
};
const postRequest = https.request(options, (res) => {
res.setEncoding('utf8');
res.on('data', (chunk) => {
jsonRes = JSON.parse(chunk);
return callback(jsonRes);
});
});
postRequest.write(data);
postRequest.end();
}
const aCallback = (responseData) => {
console.log(responseData);
request(aCallback);
}
对样式偏好的修改非常温和。
希望它显示出一种更多的TypeScripty
风格,这是我最近学习该语言后所选择的。 (TS-ee?Swifty?讨厌吗?)
我通常也喜欢const
我使用的函数的每个部分(return
值),但是好的 performant 不变性可能需要额外的库或更多的功能方式我认为这对Angular
不利(我希望最终能尽快在React
中重建项目)。