Intellisense Javascript VS2013 tidak berfungsi untuk semuanya

Saat ini intellisense saya di visual studio berfungsi untuk hal-hal seperti $(this).hide dll. Tetapi untuk kode di bawah ini tidak berfungsi ketika saya ingin menarik op misalnya ajax, serverside dan kolom. Ketika saya menekan ctrl-space saya tidak mendapatkan opsi yang dapat saya tambahkan. Saya tidak yakin apa yang menyebabkan ini? Apakah ini tidak didukung atau apakah saya perlu mengonfigurasi sesuatu?

$('#example').DataTable(
        {
        serverSide: true,
        ajax: 'GetUsers',
        columns: [
            { data: 'Id', visible:false,sortable:false},
            { data: 'UserName' },
            { data: 'EmailAddress' }
        ]
    });

person Patrick    schedule 14.05.2014    source sumber
comment
Coba segarkan dengan Ctrl + Shift + j   -  person Dean.DePue    schedule 14.05.2014
comment
ctrl-shift-j tidak melakukan apa pun.... Juga tidak ada umpan balik dari vs.   -  person Patrick    schedule 14.05.2014
comment
Aneh, Anda akan melihat pesan pembaruan di pojok kiri bawah...   -  person Dean.DePue    schedule 14.05.2014
comment
Saya mencobanya juga dengan mengubah DataTable menjadi .animate... Kemudian saya juga mendapatkan petunjuk dapatkan dan setel.   -  person Patrick    schedule 14.05.2014
comment
Lihatlah info ini, mungkin bisa membantu: blogs.msdn.com/b/microsoft_press/archive/2013/11/07/   -  person Dean.DePue    schedule 14.05.2014
comment
Saya menyiapkan _references.js. Juga, ketika saya melakukan $(something) dan menekan a . Saya mengerti petunjuknya. Hanya saja bukan untuk properti yang bisa Anda atur.   -  person Patrick    schedule 14.05.2014
comment
Anda mendapatkan intellisense pada $(something) karena Anda mereferensikan jQuery, saya yakin, tetapi DataTable adalah plugin yang berbeda bukan?   -  person GôTô    schedule 14.05.2014
comment
Ini adalah plugin yang berbeda. Saya juga mereferensikannya. Masalahnya adalah, ketika saya melakukan misalnya $(something(animate({....}); Properti yang dapat Anda atur di lokasi .... juga tidak ditampilkan.   -  person Patrick    schedule 14.05.2014


Jawaban (1)


Visual Studio menggunakan markup seperti XML yang dikomentari untuk membangun kecerdasan javascript.

Pada dasarnya, Anda menambahkan markup formulir ini (misalkan kode ini ada di myScript.js):

function myFeature (enable) {
    /// <summary>Summary of the function</summary>
    /// <param name='enable' type='Boolean'>True: RW, False: RO</param>

    [function code here]
}

Dalam contoh ini, Anda dapat melihat parameter enable dideklarasikan sebagai boolean, Anda akan mendapatkan intellisense yang sesuai.

Ada banyak tag yang dapat Anda gunakan: <summary>, <param>, <field>, dll.

Anda dapat menemukan dokumentasi di MSDN.

Untuk mengakses intellisense ini dari file skrip lain, Anda perlu menambahkan referensi seperti yang Dean.DePue katakan (/// <reference path="~/Scripts/myScript.js" />) .

Sekarang kembali ke masalah Anda

DataTable tidak menyediakan file skrip markup untuk menjelaskan ke studio visual bagaimana segala sesuatunya bekerja di dalamnya. Visual Studio masih bisa mendapatkan fungsi yang tersedia, tetapi tidak ada info tambahan yang ditemukan.

Perhatikan bahwa Anda juga dapat menyediakan markup ini dalam file terpisah (sering disebut file vsdoc). Ini memungkinkan kita untuk menyematkan file yang diperkecil tetapi tetap mendapatkan intellisense dengan menggunakan // <reference> yang menunjuk ke file vsdoc.


Singkatnya

DataTable tidak menyediakan info intellisense (dan tidak memiliki file vsdoc terpisah), itulah sebabnya Anda tidak mendapatkan apa pun.

Sesuai dengan fungsi animate, parameter pertama dideklarasikan sebagai type=Object, sehingga dapat berupa objek apa pun tanpa detail lebih lanjut.

person GôTô    schedule 15.05.2014
comment
Terima kasih atas jawaban anda. - person Patrick; 15.05.2014