JOJ
踏踏实实做人,认认真真做事!放纵自己就是毁灭自己!
关于智能提示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(代码块)

1

当你输入 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();
}

3 45

说明:

如果你没有指明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>
 

调用时,参数,返回值都一目了然!

67

 

如何知道更多的代码块和自定义代码块?

在JS区域中,HTML区域中,C#后台中,快捷键Ctrl+K,Ctrl+X会出现前三幅图片,Ctrl+K,Ctrl+b出来第四幅图片,主要是管理Snippets,可以导入,导出! 所有的Snippets都是 按两下Tab+Tab调出

891011

 

下面自定义一些 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 看几个,你就明白了!

1

 

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

 

测试刚才自定义的!  Ctrl+K,Ctrl+X ,一切OK

2

 

说明: 自定义snippet 调用的时候好像只能 Ctrl+K,Ctrl+X才能看到,不能像系统那样,输入首字母智能提示就出来了! 也许是我那里没有弄好! 虽然没有智能提示,但是你也可以直接输入 sptoolbar 按Tab+Tab 直接调用!

 

虽然在vs2008里面也可以这样,但是当时我也只是初步了解了解,没有具体实践过,这次看VS2010TrainingKit  的时候,第一个labs就是这个,顺便自己也记录记录.

参考 VS2010TrainingKit 

 

Technorati 标签: intellisense,vs2010,js
posted on 2011-06-12 00:02  JoinJ  阅读(10597)  评论(2编辑  收藏  举报