关于智能提示vs2008和vs2010都是很强大了!但是很多我们知道但是也没有怎么合理应用,真是可惜了啊,如果合理用起来那么会提高我们的开发效率和减少出错几率哦,如果没有智能提示,我想我会疯的. 因为我只是不确信输入的单词是否正确!
 
呵呵,先来看看js的智能提示和方法提示说明
首先新建一个common.js文件,vs2010里面新建web网站的时候,会自动添加JQ引用的!为了common.js也支持JQ,文件头加上reference 语句!
 
//关于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(代码块)的更多相关文章

  1. 用CS-Script把Notepad++变身支持智能提示和运行代码的C#集成开发环境

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:用CS-Script把Notepad++变身支持智能提示和运行代码的C#集成开发环境.

  2. 在使用VS过程中关于Javascript没有智能提示的解决方法

    问题:编写基本Script代码没有问题,但是在编写DOM代码时候没有智能提示.也就是在编写一般javascript代码时候没有问题,但是要写DOM代码的时候发现没有智能提示,如document等都需要 ...

  3. 在Powershell ISE中添加sharepoint的智能提示,Enable SharePoint PowerShell Commandlets in the PowerShell ISE

    Powershell ISE在默认状态下有一个不好的地方就是不会显示关于SharePoint的一些智能提示,例如你写一个"get-"后面提示的选项里没有sp开头的一些对象.于是找了 ...

  4. Android开发中Eclipse里的智能提示设置

    今天开始学习一下Android开发,直接在Android Developers下载的一个开发工具包,然后再下了一个JDK,配置完环境变量等一系列的工作后环境就搭建好了,在新建好第一个Android项目 ...

  5. sql中关于存在就不做操作的代码块

    前言: 在开发中,经常会对数据库表进行新增修改操作,那么如果表中的属性信息已然存在啦!就没必要去做重复的操作了... 代码块 BEGIN SELECT "COUNT"(*) int ...

  6. java中的静态变量、静态方法与静态代码块详解与初始化顺序

      我们知道类的生命周期分为装载.连接.初始化.使用和卸载的五个过程.其中静态代码在类的初始化阶段被初始化. 而非静态代码则在类的使用阶段(也就是实例化一个类的时候)才会被初始化. 静态变量 可以将静 ...

  7. Java中的静态变量、静态方法、静态代码块

    转载自http://www.cnblogs.com/panjun-Donet/archive/2010/08/10/1796209.html (一)静态方法(1)在Java里,可以定义一个不需要创建对 ...

  8. java中的静态变量,静态方法与静态代码块详解

    java中的类的生命周期分为装载,连接,初始化,使用,和卸载五个过程. 而静态代码在类的初始化阶段被初始化. 而非静态代码则在类的使用阶段(也就是实例化一个类的时候)才会被初始化. 静态变量 可以将静 ...

  9. Throwable类中3个异常处理的方法和finally代码块

    /* Throwable类中定义了3个异常处理的方法 String getMessage() 返回此 throwable 的简短描述. String toString() 返回此 throwable ...

随机推荐

  1. Android 面试知识集2

    继续上一篇文章整理有关Android的基础知识,为面试做准备的可以看看哪些知识是遗漏了.资料都是网上整理来,纠正了一些错误,有部分解析加入个人理解!感谢分享相关知识的开发者.这些知识平常开发的过程中都 ...

  2. java中的设计模式一 装饰模式

    1.装饰模式(Decorator)的定义:又名包装(Wrapper)模式,装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案. 2.装饰模式以对客户端透明的方式动态的给一个对象附加上 ...

  3. 【Android】按钮点击事件的常用写法

    学习总结: 最近学习了Android点击事件的常用写法.点击事件会触发监听对象身上的回调,常用写法有以下四种: 方法一:使用匿名内部类. public class MainActivity exten ...

  4. java.io.BufferedInputStream 源码分析

    BufferedInputStream是一个带缓冲区的输入流,在读取字节数据时可以从底层流中一次性读取多个字节到缓冲区,而不必每次读取操作都调用底层流,从而提高系统性能. 先介绍几个关键属性 //默认 ...

  5. angula学习

    入门 http://www.angularjs.cn/A004 http://www.cnblogs.com/whitewolf/p/angularjs-start.html http://www.n ...

  6. Access restriction: The method typeNameToClass(String) from the type ObjectHandler is not accessible due to restriction on required library

    异常: Access restriction: The method typeNameToClass(String) from the type ObjectHandler is not access ...

  7. Extjs4.x MVC开发模式,效率提高的两大秘诀

    最近做MVC开发的,遇到一个蛋疼的问题,每次加载模块都需要耗时3~4秒钟,才可以显示出完整的页面,通过监控,发现主要还是在Controller里慢,加载js文件等都是非常快的,但一到controlle ...

  8. why "Everything" is so fast?

    Everything并不扫描整个磁盘,只是读取磁盘上的USN日志,所以速度飞快.但因此缺点也明显:1.只支持NTFS格式的分区,因为USN日志是NTFS专有的.在FAT.FAT32格式分区上无法使用E ...

  9. VMware虚拟机找不到USB设备

    VMware虚拟机找不到USB设备该怎么办?打开虚拟机发现竟然找不到usb设备,键盘和鼠标都是usb的,这该怎么办呢?出现这个问题是因为VMUSBArbService服务没有开启,下面分享开启的方法 ...

  10. FPGA内部动态可重置PLL讲解(二)

    对于全局时钟的管理,涉及到关于亚稳态的知识,大家可以上网搜索相关资料,这里不再赘述.亚稳态最简单的理解形式是无法判断是处于高电平状态还是处于低电平状态,这样会导致整个系统不稳定,会出现逻辑上的错误. ...