Tag: 打字稿

如何下载和加载脚本文件?

在教程列表之后,我需要创建一个TS文件。 我已经按照本教程中的所有内容(以及之前的所有16个,使用orchard cms创建日历) 所以,如果你看一下video中的4.49 ,Ron解释了下载JQuery (需要作为参考)。 所以他告诉我们(但没有告诉我们)从这里下载jquery.d.ts文件,然后将其插入到项目中。 这一切都很好,但我找不到在哪里下载它。 如果我单击jquery.d.ts ,文本文档类型格式将在屏幕上显示该文件。 所以我尝试将文本复制到文件并在本地保存到他在video中提到的位置。 但这会引发超过50个错误…所以我猜这是不正确的。 任何人都可以告诉我如何在我的项目中正确加载此文件? 谢谢 编辑 好的,所以感谢你帮助到目前为止…我没有意识到点击原始下载的文件。 所以它的d / l和放置在与教程相同的位置,我得到了一些错误…..例如 async?: boolean; //boolean is flagging up as: any: the name boolean does not exist in the current scope. interface JQueryXHR extends XMLHttpRequest, JQueryPromise { //JQueryPromise does not exist in the current scope //then there are a […]

TypeScript with Jquery

我收到此错误“未捕获的ReferenceError:$未定义”请在下面找到我的代码。 /// class Test { name: string; constructor() { this.name = “gowtham”; } dispname() { alert(“Name :” + this.name); } } $(document).ready(function () { debugger; var test = new Test(); $(‘#test’).on(‘click’, function() { debugger; test.dispname(); }); }); 我在我的.ts文件中有参考路径=“jquery.d.ts” 。 我在这里遗漏了什么吗?

SPFx不能使用JQuery?

我正在使用由Yeoman创建的SPFx开发一个全新的SharePoint Web部件,脚手架模板很好,为JQuery和JQueryUI添加NPM也没有遇到任何问题,我看到GULP SERVE在后台运行没有任何错误。 当我在JQWebPart.ts中添加以下行时,会出现问题: import * as jQuery from ‘jquery’; 一旦添加了上面的行, GULP SERVE会输出很长的错误列表,下面是所有错误的最后几行: [16:54:06] Error – typescript – node_modules\@types\jquery\index.d.ts(7502,33): error TS2314: Generic type ‘Callbacks’ requires 2 type argument(s). [16:54:06] Error – typescript – node_modules\@types\jquery\index.d.ts(7503,36): error TS2314: Generic type ‘Deferred’ requires 4 type argument(s). [16:54:06] Error – typescript – node_modules\@types\jquery\index.d.ts(7504,41): error TS2314: Generic type ‘Event’ requires […]

在带有typescript的事件处理程序中使用$(this)

我在stackoverflow中看到很多答案都被错误地回答了,我想至少为自己说清楚。 旧问题:在带有typescript的事件处理程序中使用$(this)。 大部分答案都是关于使用event.target 第一个问题是它不仅是event.target (堆栈溢出的大部分答案)。 我也需要检查IE特定的术语(任何记得jquery前几天的人至少知道这一点)。 第二个问题是传播。 假设我有一些像这样的元素 something is here 我创建了a像这样的点击事件: $(“a”).click((evt)=>{ evt = evt || window.event; var target = evt.target || evt.srcElement; console.log($(target)); }); 如果通过适当的点击在这些元素周围有足够的填充和边距,我可以将目标作为三个元素a , i , span 现在头痛将开始,然后我需要检查它点击的是什么,是a还是span甚至是i 如果我可以访问$(this),它会不时带来不需要的冗余代码。 $(this)的美妙之处在于它正在返回我正在收听的项目,跨浏览器! 在我的情况下$(this)总是引用a而不是任何其他子元素。 所以我知道,例如,如果我想访问我需要搜索子元素。 但是在Typescript让我使用事件的方式中,我需要检查DOM中的位置(目标是span还是a或者i !!!),然后我决定爬上或者在树中下来或者在当前元素。 我知道应该有更好的方法。 所以问题是它是什么?

在typescript commonjs中导入jquery和bootstrap

我正在使用browserify导入一些nodejs模块。 使用这个sintax一切正常: $ = jQuery = require(‘jquery’); require(‘bootstrap’); require(‘angular’); require(‘ngRoute’); require(‘firebase’); require(‘angularfire’); 现在我正在尝试将其转换为打字稿(使用版本1.8),但我无法想象如何做到这一点。 我正在使用browserify的tsify插件 我试过像Sintax一样的 import * as jquery from “jquery”; import * as jQuery from “jquery”; import * as $ from “jquery”; 要么 declare var jQuery; declare var $; import * as jquery from “jquery”; $ = jQuery =jquery; 但它不起作用!

不能使用$(’。foo’)。on(’click’,’。bar’,使用jQuery和TypeScript

我在项目中使用TypeScript和jQuery,我需要使用jQuery来监听事件: const $previewListWrp: jQuery = $(‘.js-preview-list-wrp’).first(); $previewListWrp.on(‘click’, ‘.btn-action.remove’, (evt: Event): void => { let $box: JQuery = $(evt.target).closest(‘.js-preview-wrp’); console.log($box.data()); }); 但是,我收到错误 “click”类型的参数不能分配给’PlainObject void> |类型的参数 EventHandlerBase 刚刚开始一个新项目,并安装了最新版本的TypeScript,jQuery和@ types / jQuery。

是否可以使用TypeScript对jQuery.fn.extend建模

我的猜测是,答案是“不”,但我想检查一下我没有错过的东西。 jQuery有一个fn.extend方法 ,它允许你用额外的方法扩充jQuery对象。 以下是API文档中的示例: jQuery.fn.extend({ check: function() { return this.each(function() { this.checked = true; }); }, uncheck: function() { return this.each(function() { this.checked = false; }); } }); // Use the newly created .check() method $( “input[type=’checkbox’]” ).check(); 我一直在填写jQuery JSDoc并测试DefinitelyTyped项目。 以前jQuery.fn被定义为any 。 为了使它符合我一直在考虑更改它以涵盖extend方法的文档: fn: { /** * Merge the contents of an object onto the […]

HTML5video播放/暂停问题

我正在尝试构建一个非常简单的HTML5video播放器: HTML 打字稿 $(document).ready(function () { if ($(‘#format-video’).length > 0) { var video = document.getElementById(‘format-video’); video.oncanplaythrough = function () { $(‘.video-run’).fadeIn(200); $(‘.video-run’).click(function () { $(“.video .background”).fadeOut(200); $(‘.video-run’).fadeOut(200); $(‘.video-play-pause’).fadeIn(200); $(‘.video-play-pause’).on(‘click’,function () { if (video.paused) { video.play(); } else { video.pause(); } }) video.play(); }); } }); 因此,当video可以“播放”时,一个大的“播放”按钮会淡入,当渐渐消失时,一个小的暂停/播放会消失。 如果我单击按钮播放/暂停,暂停工作,但如果我再次单击它,它只播放几秒钟并冻结或没有任何反应。 我正在测试Chrome 40.0.2214.91米。 我尝试按照建议设置preload =“none”: HTML5video控件 – 暂停后只能在chrome中播放,但没有成功。 不确定是否有解决方案。

TypeScript中jQuery对象的类型是什么?

这将是一个非常短暂的。 我只是想知道我应该为jQuery元素使用什么类型? 没有jQuery,我继续这样: export class Modal { constructor(protected element:HTMLElement) { } } 但是,假设element将是一个jQuery选择器,例如$(‘.myDiv’) 。 那个element应该具有什么类型?

如何禁用特定行的ts规则?

Summernote是一个jQuery插件,我不需要它的类型定义。 我只想修改对象,但TS不断抛出错误。 下面的一行仍然告诉我: “’jQueryStatic’类型中不存在”属性’summernote’。“ 错误。 (function ($) { /* tslint:disable */ delete $.summernote.options.keyMap.pc.TAB; delete $.summernote.options.keyMap.mac.TAB; /* tslint:enable */ })(jQuery) 编辑: 这是我的tsconfig.json { “compilerOptions”: { “outDir”: “./dist/”, “sourceMap”: true, “noImplicitAny”: true, “module”: “commonjs”, “target”: “es5”, “allowJs”: true, “noUnusedParameters”: true }, “include”: [ “js/**/*” ], “exclude”: [ “node_modules”, “**/*.spec.ts” ] }