vs2010中 js的intellisense(智能提示) 和 Snippets(代码块)
//关于JS提示: 使用 reference path
/// <reference path="Scripts/jquery-1.4.1-vsdoc.js"/>
String.prototype.trim = function () {
/// <summary>清除两端空格</summary>
/// <returns type="String" />
return this.replace(/(^\s*)|(\s*$)/g, "");
}
说明:summary里面为该方法的说明, returns 为返回值类型说明!你也许觉得reference ,summary这些单词多难敲啊! 呵呵,这里就需要用到Snippets(代码块)

当你输入 ref ,sum的时候,智能提示就会出来,你只需要按Tab+Tab即可!注意看ref前面的小图标,只要是这种图标的你都可以按两下Tab键,就会快速出来预定义的代码片段!
接下里你新建一个 sp2010.js 的js文件 ,这个文件你需要调用 common.js里面的trim函数
//关于JS提示: 使用 reference path
/// <reference path="common.js"/>
/// <reference path="Scripts/jquery-1.4.1-vsdoc.js"/> function testTrimStr(str) {
/// <summary>测试去掉字符串两端空格</summary>
/// <param name="str" type="String">需要去掉空格的参数</param>
/// <returns type="String" />
return str.trim();
}


说明:
如果你没有指明param 的参数或者param 参数的type为String类型,不会有智能提示图片1和图片3,但你把param 参数指明的时候,就会看到提示了!
这样就用调用C#里面的方法一样(如果方法写了注释) 都可以看到参数和返回值! 这样的JS的调用起来才得心应手吧!
接下里新建 Default.aspx 页面,调用sp2010.js 里面的testTrimStr()方法 (当然有人肯定说,你这样太啰嗦了吧,直接调用trim()啊,这里只是演示)
<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script src="common.js" type="text/javascript"></script>
<script type="text/javascript" src="sp2010.js"></script> <script type="text/javascript">
function test(name,age) {
/// <summary>我的测试方法</summary>
/// <param name="name" type="String">姓名</param>
/// <param name="age" type="Int">年龄</param>
/// <returns type="String" />
return name + " " + age;
}
</script> <script type="text/javascript">
$(function () {
var a = " test ";
alert(testTrimStr(a));
alert(test("harvey", 22));
});
</script>
调用时,参数,返回值都一目了然!


如何知道更多的代码块和自定义代码块?
在JS区域中,HTML区域中,C#后台中,快捷键Ctrl+K,Ctrl+X会出现前三幅图片,Ctrl+K,Ctrl+b出来第四幅图片,主要是管理Snippets,可以导入,导出! 所有的Snippets都是 按两下Tab+Tab调出




下面自定义一些 Snippets,新建一个XML文件,键入如下代码, 另存为 sptoolbar.snippet
<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippet Format="1.0.0" xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<Header>
<Title>sptoolbar</Title>
<Author>Harvey</Author>
<Shortcut>sptoolbar</Shortcut>
<Description>用于Sharepoint中的ToolBar</Description>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Code Language="html">
<![CDATA[
<%@ Register TagPrefix="wssuc" TagName="ToolBar" Src="~/_controltemplates/ToolBar.ascx" %>
<%@ Register TagPrefix="tbb" TagName="ToolBarButton" Src="~/_controltemplates/ToolBarButton.ascx" %>
<wssuc:toolbar id="UserManagerToolBar" runat="server">
<!--button显示在左边-->
<template_buttons>
<tbb:ToolBarButton runat="server" id="tbbAdd" Text="添加" ToolTip="添加" ImageUrl="" OnClientClick="" Click=""/>
</template_buttons>
<!--button显示在右边-->
<template_rightbuttons>
<tbb:ToolBarButton runat="server" id="tbbDelte" Text="删除"/>
</template_rightbuttons>
</wssuc:toolbar>
]]>
</Code>
</Snippet>
</CodeSnippet>
上面就是一个新建Snippet的模板,你肯定觉得每次都敲这么多重复的轮子是一件很痛苦的事情!还记得上面的快捷键吗?Ctrl+K,Ctrl+X调出代码块, 注意如果这里你直接输入 Snippet 按两下Tab+Tab是不行的,有些时候还是用Ctrl+K,Ctrl+X吧! 这样你就可以直接在 CDATA 填你的核心就是了! 如果需要更详细的Snippet 的了解,可以打开系统默认的Snippet 看几个,你就明白了!

Ctrl+K,Ctrl+b调出代码段管理器,导入刚才保存的sptoolbar.snippet 即可! 注意保存的语言选择和你自定义的snippet 匹配哦,比如这个snippet 在HTML页面中使用,语言就选择HTML,在C#后台中使用,就选择visual C#
测试刚才自定义的! Ctrl+K,Ctrl+X ,一切OK

说明: 自定义snippet 调用的时候好像只能 Ctrl+K,Ctrl+X才能看到,不能像系统那样,输入首字母智能提示就出来了! 也许是我那里没有弄好! 虽然没有智能提示,但是你也可以直接输入 sptoolbar 按Tab+Tab 直接调用!
虽然在vs2008里面也可以这样,但是当时我也只是初步了解了解,没有具体实践过,这次看VS2010TrainingKit 的时候,第一个labs就是这个,顺便自己也记录记录.
参考 VS2010TrainingKit
vs2010中 js的intellisense(智能提示) 和 Snippets(代码块)的更多相关文章
- 用CS-Script把Notepad++变身支持智能提示和运行代码的C#集成开发环境
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:用CS-Script把Notepad++变身支持智能提示和运行代码的C#集成开发环境.
- 在使用VS过程中关于Javascript没有智能提示的解决方法
问题:编写基本Script代码没有问题,但是在编写DOM代码时候没有智能提示.也就是在编写一般javascript代码时候没有问题,但是要写DOM代码的时候发现没有智能提示,如document等都需要 ...
- 在Powershell ISE中添加sharepoint的智能提示,Enable SharePoint PowerShell Commandlets in the PowerShell ISE
Powershell ISE在默认状态下有一个不好的地方就是不会显示关于SharePoint的一些智能提示,例如你写一个"get-"后面提示的选项里没有sp开头的一些对象.于是找了 ...
- Android开发中Eclipse里的智能提示设置
今天开始学习一下Android开发,直接在Android Developers下载的一个开发工具包,然后再下了一个JDK,配置完环境变量等一系列的工作后环境就搭建好了,在新建好第一个Android项目 ...
- sql中关于存在就不做操作的代码块
前言: 在开发中,经常会对数据库表进行新增修改操作,那么如果表中的属性信息已然存在啦!就没必要去做重复的操作了... 代码块 BEGIN SELECT "COUNT"(*) int ...
- java中的静态变量、静态方法与静态代码块详解与初始化顺序
我们知道类的生命周期分为装载.连接.初始化.使用和卸载的五个过程.其中静态代码在类的初始化阶段被初始化. 而非静态代码则在类的使用阶段(也就是实例化一个类的时候)才会被初始化. 静态变量 可以将静 ...
- Java中的静态变量、静态方法、静态代码块
转载自http://www.cnblogs.com/panjun-Donet/archive/2010/08/10/1796209.html (一)静态方法(1)在Java里,可以定义一个不需要创建对 ...
- java中的静态变量,静态方法与静态代码块详解
java中的类的生命周期分为装载,连接,初始化,使用,和卸载五个过程. 而静态代码在类的初始化阶段被初始化. 而非静态代码则在类的使用阶段(也就是实例化一个类的时候)才会被初始化. 静态变量 可以将静 ...
- Throwable类中3个异常处理的方法和finally代码块
/* Throwable类中定义了3个异常处理的方法 String getMessage() 返回此 throwable 的简短描述. String toString() 返回此 throwable ...
随机推荐
- CentOS 7 下安装 Nginx(转)
转载自:http://www.linuxidc.com/Linux/2016-09/134907.htm 安装所需环境 Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Wi ...
- 【转】26张PPT让你告别拖延症
不论你如何富有,你都赚不到更多的时间,你也回不到过去.没有那么多的假如,只有指针滴答的时光飞逝和你应该好好把握的现在. 可能的话,请仔细读读PPT原件而不要只是看翻译吧. 1.时间常有,时间优先. 2 ...
- 如何在Linux下Redis安装
转载出于:http://blog.csdn.net/jiangguilong2000/article/details/8114740 redis作为NoSQL数据库的一种应用,响应速度和命中率上还是比 ...
- linux 获取网卡信息
sar -n DEV 2 10:41:37 AM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s10:41:39 AM eth ...
- 计算MySQL的内存峰值公式
-- 计算MySQL的内存峰值公式,计算所有的连接满了的情况下:select (@@key_buffer_size + @@query_cache_size + @@tmp_table_size ...
- 根据城市表生成json数据
T_CityManager am = new T_CityManager(); string tou = "var LAreaData=["; string value = &qu ...
- 【C】——信号量 互斥锁 条件变量的区别
信号量用在多线程多任务同步的,一个线程完成了某一个动作就通过信号量告诉别的线程,别的线程再进行某些动作(大家都在semtake的时候,就阻塞在哪里).而互斥锁是用在多线程多任务互斥的,一个线程占用了某 ...
- openvpn push "route
①在openvpn的配置文件里增加push "route 192.168.4.0 255.255.255.0",目的是为客户端加一条路由,这样客户端才有可能访问到办公网络中出VPN ...
- python里面有人写while 循环用 用while 1 和while True的区别
由于Python2中,True/False不是关键字,因此我们可以对其进行任意的赋值,这就导致程序在每次循环时都需要对True/False的值进行检查:而对于1,则被程序进行了优化,而后不会再进行检查 ...
- 【jquery】ajax 请求成功后新开窗口被拦截解决方法
问题: 前面开发项目时碰到一个问题,ajax 异步请求成功后需要新开窗口打开 url,使用的是 window.open() 方法,但是很可惜被浏览器给拦截了,怎么解决这个问题呢? 分析: 浏览器之所以 ...