-1
私の悪い英語については申し訳ありませんが、TypescriptとAngularを学習しています。ファイルを自分のデータベースにアップロードしようとしていますが、サーバーサイドとクライアントのコードはJavascriptであり、 Typescript、あなたは私を助けてくれますか?これはコードです:javascriptをtypescriptに変換するにはどうすればよいですか?
app.controller('MyCtrl',function($scope){
$scope.$watch('files.length',function(newVal,oldVal){
console.log($scope.files);
});
});
app.controller('MyCtrl',function($scope){
...
$scope.onSubmit = function(){
var formData = new FormData();
angular.forEach($scope.files,function(obj){
formData.append('files[]', obj.lfFile);
});
$http.post('./upload', formData, {
transformRequest: angular.identity,
headers: {'Content-Type': undefined}
}).then(function(result){
},function(err){
});
};
...
});
var express = require('express');
var formidable = require('formidable');
var app = express();
app.use(express.static(__dirname + '/public'));
...
app.post('/upload',function(req,res){
var form = new formidable.IncomingForm();
form.uploadDir = __dirname +'/public/uploads';
form.parse(req, function(err, fields, files) {
});
form.on ('fileBegin', function(name, file){
file.path = form.uploadDir + "/" + file.name;
});
form.on ('end', function(){
res.sendStatus(200);
});
});
...
var express = require('express');
var multer = require('multer');
var app = express();
app.use(express.static(__dirname + '/public'));
...
var storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, __dirname +'/public/uploads');
//modify upload dest
},
filename: function (req, file, cb) {
cb(null, file.originalname);
}
});
var upload = multer({ "storage": storage });
var type = upload.array('files[]');
app.post('/upload',type,function(req,res){
res.sendStatus(200);
});
...
TypeScriptはJavaScriptのスーパーセットです。すべての有効なJavaScriptは有効なTypeScriptです。 –
いいえ、間違っています。シンタックスのスーパーセットは、任意のJSコードがTSで有効であることを意味するものではありません。 @Lucas R.、 '.js'ファイルの名前を' .ts'に変更することができます。使用するライブラリの定義を見つける必要があります: 'angular'、' $ http'などです。ES6モジュールをインポートし、CommonJS形式を生成するようにTSを構成するための構文。 – Paleo