Node.js配置别名alias的两种方法

JavaScript011

Node.js配置别名alias的两种方法,第1张

什么是别名?

可以省去 ../../../xxx ,直接从配置的目录开始找文件

使用 webpack 进行打包并且在 webpack.config.js 配置里面配置 alias

配置 webpack.config.js

之后在目录 src 下面创建 index.js 和 test.js

index.js

test.js

之后控制台输入 webpack 编译之后运行 node dist/bundle.js 即可输出结果 test

控制台输入 npm install module-alias 或 yarn add module-alias 安装 module-alias

然后进入 package.json 加入如下配置:

(如果使用 TypeScript 的话,可以用 tsc 直接编译。但是清注意这里的 src 应改成打包后的目录比如 dist build 等)

之后在主入口文件头部引用 module-alias/register 如:

index.js

test.js

之后控制台运行 node src/index.js 即可输出结果 test

虽然打包运行可以通过别名,但是 IDE 并不认识

我们需要在项目根目录新建文件 jsconfig.json (使用 TypeScript 则是 tsconfig.json )

在 compilerOptions 加入:

文件最后如下:

安装环境之后两种办法:

两者的总体关系是jQuery是JavaScript的一个类库。即把JavaScript中的一些功能封装成方法,将一些DOM对象重新封装,是的开发人员使用起来更加快捷方便。

jQuery相对于JavaScript有很大优势:

1、轻量级

JQuery非常轻巧,采用Dean

Edwards编写的Packer压缩后,大小不到30KB,如果使用Min版并且在服务器端启用Gzip压缩后,大小只有18KB。

2、强大的选择器

JQuery允许开发者使用从CSS1到CSS3几乎所有的选择器,以及JQuery独创的高级而且复杂的选择器,另外还可以加入插件使其支持XPath选择器,甚至开发者可以编写属于自己的选择器。由于JQuery支持选择器这一特性,因此有一定CSS经验的开发人员可以很容易的切入到JQuery的学习中来。

3、出色的DOM操作的封装

JQuery封装了大量常用的DOM操作,使开发者在编写DOM操作相关程序的时候能够得心应手。JQuery轻松地完成各种原本非常复杂的操作,让JavaScript新手也能写出出色的程序

4、可靠的事件处理机制

JQuery的事件处理机制吸收了JavaScript专家Dean

Edwards编写的事件处理函数的精华,是的JQuery在处理事件绑定的时候相当可靠。在预留退路、循序渐进以及非入侵式编程思想方面,JQuery也做得非常不错。

5、完善的Ajax

JQuery将所有的Ajax操作封装到一个函数$.ajax()里,使得开发者处理Ajax的时候能够专心处理业务逻辑而无需关心复杂的浏览器兼容性和XMLHttpRequest对象的创建和使用的问题。

6、不污染顶级变量

JQuery只建立一个名为JQuery的对象,其所有的函数方法都在这个对象之下。其别名$也可以随时交流控制权,绝对不会污染其他的对象。该特性是JQuery可以与其他JavaScript库共存,在项目中放心地引用而不需要考虑到后期的冲突。

7、出色的浏览器兼容性

作为一个流行的JavaScript库,浏览器的兼容性是必须具备的条件之一。JQuery能够在IE6.0+,FF

2+,Safari2.+和Opera9.0+下正常运行。JQuery同时修复了一些浏览器之间的的差异,使开发者不必在开展项目前建立浏览器兼容库。

ml] view plain copy

function dynamicLayerData(){

var query = new esri.tasks.Query()

// query.outSpatialReference = {wkid:102100}//空间参考

query.outFields = ["*"]//返回指定字段

query.returnGeometry = true//返回图形

query.orderByFields = ["OBJECTID"]//排序

query.where = "1=1"

fearturelayer.selectFeatures(query, esri.layers.FeatureLayer.MODE_ONDEMAND, function(results) {

console.log(results.length)

})