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 ...
随机推荐
- C# 中的await
今天看代码遇到了很多await,梳理一下await的用法. await只针对awaitable对象,经常和Task一起使用,主要用法如下: var task = RunAsync(); //开始执行异 ...
- logback的日志文件中出现大量的ESC符号
如下图: 这个日志文件是用less命令打开的,然后看到就惊呆了,日志文件乱成这样的. 开始我以为是我把logback的配置文件弄错了,还看了半天pattern. 然后百度了一下,找了这篇博客: htt ...
- A-Frame不如x3dom
昨天才发现还有A-Frame这么个框架,是Mozilla(moz://a 这个logo挺有创意的)出的,但看了一下其实现方式和语法后,感觉与x3d/x3dom还是有差距的. 二者的实现方式都是基于We ...
- sam9260 adc 测试
/* * adc_test.c * * Copyright (C) 2007 Mengrz */ #include <stdio.h> #include <stdlib.h> ...
- git——添加远程库
添加远程库 阅读: 406682 现在的情景是,你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以 ...
- TCP/IP协议栈
TCP/IP协议栈包含TCP层.IP层.链路层.NIC驱动等. 参考: 1. 全面了解linux TCP/IP协议栈 2. 跟我学TCP/IP系列
- mac OS X:[11]如何添加打印机
苹果菜单中,单击下拉列表中的『系统偏好设置』: 或在Dock上,单击『系统偏好设置』图标. 2 在『系统偏好设置』窗口中,单击『打印机与扫描仪』图标. 3 在『打印机与扫描仪』窗口中,单击打印机框架下 ...
- 两种常用的jquery事件加载的方法 的区别
两种常用的jquery事件加载的方法 $(function(){}); window.onload=function(){} 第一个呢,是在DOM结构渲染完成以后调用的,这时候网页中一些资源还 ...
- 解决DuplicateFileException: Duplicate files copied in APK META-INF/LICENSE(或META-INF/DEPENDENCIES)
导入eclipse项目时报 Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.> ...
- R语言基本操作函数(1)变量的基本操作
1.变量变换 as.array(x),as.data.frame(x),as.numeric(x),as.logical(x),as.complex(x),as.character(x) ...