我是coffeescript的新手。我已经在js
中编写了代码,现在我想在coffeescript
转换它,我已经尝试了很多,我也引用了This。但它不会帮助我。
这是我的代码,
this.$scope.callTestFuntion = function(){
this.blockingObject.render(function(dataURL){
console.log('via render');
console.log(dataURL.length);
});
}
this.$scope.blockingObject.callback=function(dataURL){
console.log('via function');
console.log(dataURL.length);
this.myCroppedImage = dataURL;
}
var handleFileSelect=function(evt) {
console.log('here');
var file=evt.currentTarget.files[0];
var reader = new FileReader();
reader.onload = function (evt) {
this.$scope.$apply(function($scope){
this.$scope.myImage=evt.target.result;
});
};
reader.readAsDataURL(file);
};
我想用coffeescript语法转换它。请帮帮我。
由于
答案 0 :(得分:1)
以下是您转换的代码:
# CoffeeScript code converted from JavaScript
# from Georgi Naumov
# gonaumov@gmail.com for contacts and suggestions
@.$scope.callTestFuntion = ->
@.blockingObject.render (dataURL) ->
console.log 'via render'
console.log dataURL.length
@.$scope.blockingObject.callback = (dataURL) ->
console.log 'via function'
console.log dataURL.length
@.myCroppedImage = dataURL
handleFileSelect = (evt) ->
console.log 'here'
file = evt.currentTarget.files[0]
reader = new FileReader()
reader.onload = (evt) ->
@.$scope.$apply ($scope) ->
@.$scope.myImage = evt.target.result
reader.readAsDataURL file
这是编译后产生的JavaScript:
// Generated by CoffeeScript 1.12.3
(function() {
var handleFileSelect;
this.$scope.callTestFuntion = function() {
return this.blockingObject.render(function(dataURL) {
console.log('via render');
return console.log(dataURL.length);
});
};
this.$scope.blockingObject.callback = function(dataURL) {
console.log('via function');
console.log(dataURL.length);
return this.myCroppedImage = dataURL;
};
handleFileSelect = function(evt) {
var file, reader;
console.log('here');
file = evt.currentTarget.files[0];
reader = new FileReader();
reader.onload = function(evt) {
return this.$scope.$apply(function($scope) {
return this.$scope.myImage = evt.target.result;
});
};
return reader.readAsDataURL(file);
};
}).call(this);
答案 1 :(得分:1)
如果您只想转换代码,请使用http://js2.coffee
@$scope.callTestFuntion = ->
@blockingObject.render (dataURL) ->
console.log 'via render'
console.log dataURL.length
return
return
@$scope.blockingObject.callback = (dataURL) ->
console.log 'via function'
console.log dataURL.length
@myCroppedImage = dataURL
return
handleFileSelect = (evt) ->
console.log 'here'
file = evt.currentTarget.files[0]
reader = new FileReader
reader.onload = (evt) ->
@$scope.$apply ($scope) ->
@$scope.myImage = evt.target.result
return
return
reader.readAsDataURL file
return
# ---
# generated by js2coffee 2.2.0