返回顶部
首页 > 资讯 > 前端开发 > VUE >TypeScript三重斜线指令的示例分析
  • 674
分享到

TypeScript三重斜线指令的示例分析

2024-04-02 19:04:59 674人浏览 独家记忆
摘要

这篇文章主要介绍typescript三重斜线指令的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!前言TypeScript是javascript的超集,实现以面向对象编程的方式

这篇文章主要介绍typescript三重斜线指令的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

前言

TypeScript是javascript的超集,实现以面向对象编程的方式使用Javascript。当然最后代码还是编译为Javascript。

三斜杠指令是包含单个XML标记的单行注释。 注释的内容用作编译器指令。

三斜杠指令仅在其包含文件的顶部有效。 三重斜杠指令只能在单行或多行注释之前,包括其他三重斜杠指令。 如果在声明或声明之后遇到它们,则将它们视为常规单行注释,并且没有特殊含义。

/// <reference path ="..."/>

/// <reference path ="..."/>指令是该组中最常见的。 它充当文件之间的依赖声明。

三斜杠引用指示编译器在编译过程中包含其他文件。

它们还可以作为在使用–out或–outFile时对输出进行排序的方法。 在预处理传递之后,文件以与输入相同的顺序发送到输出文件位置。

该过程从一组根文件开始; 这些是在命令行或tsconfig.JSON文件的”files”列表中指定的文件名。 这些根文件按照指定的顺序进行预处理。 在将文件添加到列表之前,将处理其中的所有三重斜杠引用,并包括其目标。 三重斜杠引用按照它们在文件中看到的顺序以深度优先方式解析。

如果无根则,则相对于包含文件解析三斜杠参考路径。

错误

引用不存在的文件是错误的。 如果文件具有对自身的三斜杠引用,则会出错。

使用–noResolve

如果指定了编译器标志–noResolve,则忽略三次斜杠引用; 它们既不会导致添加新文件,也不会更改所提供文件的顺序。

/// <reference types="..." />

类似于/// <reference path ="..."/>指令,该指令用作依赖声明; 但是, /// <references types ="..."/>指令声明了对包的依赖性。

解析这些包名称的过程类似于在import语句中解析模块名称的过程。 考虑三重斜杠引用类型指令的简单方法是作为声明包的导入。

例如,在声明文件中包含/// <references types ="node"/>声明此文件使用在types/node/index.d.ts中声明的名称; 因此,此包需要与声明文件一起包含在编译中。

只有在手动创建d.ts文件时才使用这些指令。

对于编译期间生成的声明文件,编译器会自动为您添加/// <references types ="..."/>; 当且仅当生成的文件使用引用包中的任何声明时,才会添加生成的声明文件中的/// <reference types ="..."/>

/// <reference lib="..." />

该指令允许文件显式包含现有的内置lib文件。

内置的lib文件以与tsconfig.json中的”lib”编译器选项相同的方式引用(例如,使用lib=”es2015”而不是lib=”lib.es2015.d.ts”等)。

对于在内置类型上进行中继的声明文件作者,例如 建议使用DOM api或内置的JS运行时构造函数(如Symbol或Iterable,三斜杠引用lib指令)。 以前这些.d.ts文件必须添加此类型的前向/重复声明。

例如,将/// <reference lib="es2017.string"/>添加到编译中的一个文件等效于使用–lib es2017.string进行编译。

/// <reference lib="es2017.string" />

"foo".padStart(4);

/// <reference no-default-lib="true"/>

该指令将文件标记为默认库。 您将在lib.d.ts及其不同变体的顶部看到此注释。

该指令指示编译器不在编译中包含默认库(即lib.d.ts)。 这里的影响类似于在命令行上传递–noLib。

另请注意,在传递–skipDefaultLibCheck时,编译器将仅跳过使用/// <reference no-default-lib ="true"/>检查文件。

/// <amd-module />

默认情况下,AMD模块是匿名生成的。 当使用其他工具处理结果模块(例如捆绑器(例如r.js))时,这会导致问题。

amd-module指令允许将可选模块名称传递给编译器:

amdModule.ts

///<amd-module name="NamedModule"/>
export class C {
}

将导致将名称NamedModule分配给模块作为调用AMD定义的一部分:

amdModule.js

define("NamedModule", ["require", "exports"], function (require, exports) {
 var C = (function () {
 function C() {
 }
 return C;
 })();
 exports.C = C;
});

/// <amd-dependency />

注意:此指令已被弃用。使用import”moduleName”;而是声明。

/// <amd-dependency path ="x"/>通知编译器需要在结果模块的require调用中注入的非TS模块依赖项。

amd-dependency指令也可以有一个可选的name属性; 这允许传递amd依赖的可选名称:

/// <amd-dependency path="legacy/moduleA" name="moduleA"/>
declare var moduleA:MyType
moduleA.callStuff()

生成的JS代码:

define(["require", "exports", "legacy/moduleA"], function (require, exports, moduleA) {
 moduleA.callStuff()
});

以上是“TypeScript三重斜线指令的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网VUE频道!

--结束END--

本文标题: TypeScript三重斜线指令的示例分析

本文链接: https://lsjlt.com/news/80399.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • TypeScript三重斜线指令的示例分析
    这篇文章主要介绍TypeScript三重斜线指令的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!前言TypeScript是Javascript的超集,实现以面向对象编程的方式...
    99+
    2024-04-02
  • Python反斜杠的示例分析
    小编给大家分享一下Python反斜杠的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!首先我们写一段非常简单的Python代码,它的作用是把一个字段先转换为...
    99+
    2023-06-14
  • Element指令clickoutside的示例分析
    小编给大家分享一下Element指令clickoutside的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!clickoutside是Element-ui实现的一个自定义指令,顾名...
    99+
    2024-04-02
  • vue-cli3+typescript的示例分析
    这篇文章将为大家详细讲解有关vue-cli3+typescript的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。vue-cli3vue-cli3的详细功能推荐官...
    99+
    2024-04-02
  • java指令重排现象两个阶段的示例分析
    这篇文章给大家分享的是有关java指令重排现象两个阶段的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。编译期指令重排解释型语言是在运行期间执行编译+运行动作,所以运行效率较编译型语言低。Java既可以作为...
    99+
    2023-06-29
  • ThinkJS2.1支持TypeScript的示例分析
    这篇文章主要为大家展示了“ThinkJS2.1支持TypeScript的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“ThinkJS2.1支持TypeS...
    99+
    2024-04-02
  • Angular1.x复杂指令的示例分析
    这篇文章主要介绍了Angular1.x复杂指令的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体如下:名称描述compile指定一...
    99+
    2024-04-02
  • AngularJS自定义指令的示例分析
    这篇文章主要介绍AngularJS自定义指令的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!前言除了 AngularJS 内置的指令外,我们还可以创建自定义指令。 通过 .d...
    99+
    2024-04-02
  • Vue自定义指令的示例分析
    这篇文章主要介绍Vue自定义指令的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在 AngularJs 中,它的指令使用 directive ( name,factor_fu...
    99+
    2024-04-02
  • Vue.js中基础指令的示例分析
    这篇文章给大家分享的是有关Vue.js中基础指令的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Vue.js 是一套构建用户界面的渐进式框架。他自身不是一个全能框架——只...
    99+
    2024-04-02
  • Vue.directive自定义指令的示例分析
    这篇文章主要介绍Vue.directive自定义指令的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.复习一下Vue自定义指令的代码,结果出现一个很无语的结果,先贴代码。2...
    99+
    2024-04-02
  • vue.js指令和组件的示例分析
    小编给大家分享一下vue.js指令和组件的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!vue.js 指令<div...
    99+
    2024-04-02
  • php之redis短线重连的示例分析
    这篇文章主要介绍了php之redis短线重连的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php redis断线重连,pconnect连接失败问题介绍在swoole...
    99+
    2023-06-20
  • JavaScript和TypeScript中class的示例分析
    这篇文章主要介绍了JavaScript和TypeScript中class的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、静态成员...
    99+
    2024-04-02
  • Angular1.x自定义指令的示例分析
    小编给大家分享一下Angular1.x自定义指令的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!具体如下:调用Modul...
    99+
    2024-04-02
  • angular中自定义指令的示例分析
    这篇文章将为大家详细讲解有关angular中自定义指令的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。自定义属性的四种类别分为: 元素E,属性A,注释M,类C ,...
    99+
    2024-04-02
  • Angularjs中自定义指令的示例分析
    小编给大家分享一下Angularjs中自定义指令的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一:自定义指令常用模板下...
    99+
    2024-04-02
  • Vue 2.0之内部指令的示例分析
    这篇文章主要介绍了Vue 2.0之内部指令的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.Vue.js介绍  ...
    99+
    2024-04-02
  • Angular2之结构型指令的示例分析
    这篇文章主要介绍了Angular2之结构型指令的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Angular 有一个强力的模板引擎,...
    99+
    2024-04-02
  • CentOS指令语法结构的示例分析
    小编给大家分享一下CentOS指令语法结构的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧![tyang3@localhost Desktop]$ command [-options] [arguments]&nbs...
    99+
    2023-06-10
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作