我可以使用Jonic / Javascript与Ionic而不是Typescript

时间:2017-06-05 17:32:10

标签: jquery cordova typescript ionic-framework

我正在使用Visual Studio 2017和Apache Cordova开发移动应用程序。 我总是使用JQuery和Javascript进行编码,但我从未使用Typescript编写代码。

在网上搜索时,几乎每个人都在使用带有Ionic的Typescript。 (考虑开始受益并使用Ionic Framework) 如果我使用JQuery或Javascript而不是使用Ionic的Typescript吗?

或者它建议我学习Typescript并开始使用Ionic?

感谢您的澄清。

这就是我通常使用JQuery编写Cordova代码的方法:

function shuffleArray(array) {
for (var i = array.length - 1; i > 0; i--) {
    var j = Math.floor(Math.random() * (i + 1));
    var temp = array[i];
    array[i] = array[j];
    array[j] = temp;
}
return array;
}

function beginGame() {

$('#info').hide();

var level = 0;

$('#game_title h2').html('Level 1');
$('#game_question h3').html('What is the most common language?');

$('#game_body').html('');
var gameBody = document.getElementById('game_body');
var columnAnswer, buttonAnswer;

var answers = [['Arabic', ''], ['Spanish', ''], ['English', 'right_answer'], ['Chinese', '']];
var arr = shuffleArray(answers);
console.log(arr);

for (var i = 0; i < arr.length; i++) {
    columnAnswer = document.createElement('div');
    columnAnswer.className = 'col-xs-12';

    buttonAnswer = document.createElement('button');
    buttonAnswer.id = 'answer_button_'+i;
    buttonAnswer.className = 'btn btn-primary btn-sx answer_button ' + arr[i][1];
    buttonAnswer.type = 'button';
    buttonAnswer.innerHTML = arr[i][0];
    //buttonAnswer.setAttribute('onclick', 'onQuoteClick(' + quotes[i].id + ')');
    console.log(buttonAnswer);
    columnAnswer.appendChild(buttonAnswer);

    gameBody.appendChild(columnAnswer);
}

$('.answer_button').click(function () {
    var button_id = $(this).attr('id');
    if ($('#' + button_id).hasClass('right_answer')) {
        //alert('Right Answer');
        $('#info').show();
        fillInformation();
    } else {
        alert('Wrong Answer');
    }
});



}
function fillInformation() {
$('#game_title h2').html('English');
$('#info_image img').attr("src", './images/level_1.png');
$('#info_text h5').html('English Language');
}

2 个答案:

答案 0 :(得分:2)

是的,完全值得使用Typescript并以标准方式进行。

与你习惯的主要区别不是Typescript vs Javascript,它是vanilla Js vs Angular。

Angular是Ionic休息的框架,它正在扩展。 Angular框架默认位于Typescript。

但这对你来说不是问题,因为Typescript向后兼容Javascript。 .ts文件中的任何vanilla Js代码编译并运行得很好(尽管如果你没有遵循最佳实践,你会失去Typescript的好处)。

你也可以使用jquery,就像你习惯的那样。

答案 1 :(得分:1)

你应该可以使用Ionic的JQuery和Javascript,但是,你可能会失去Ionic提供的Angular功能。你也可以在ts文件中编写ES6 javascript。否则,我建议使用不太难学习imo的Typescript。希望这会有所帮助。