问题标签 [tsify]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
typescript - 如何指定tsify的打字路径?
我在路径中有我的打字稿源:
tsconfig.json 位于:
并输入:
我可以通过以下方式很好地运行 tsc:
src/game/ts/typings/**/*.d.ts
但是我使用这个命令得到未定义的类型错误(对于文件中声明的类型):
为什么 tsc 不接受定义?我的 tsconfig.json 包含:
typescript - Browserify、Babel 和文件扩展名
我正在使用 Browserify、Babel、gulp 并注意到一个奇怪的行为。
假设我有一个名为“./lib.js”的文件。是 ES6,我应该可以同时使用这两种语法:
然而,第一种语法总是有效的,但对于某些模块,第二种则无效。我得到的是一个空对象,而不是我的导出对象。
无论我们是否包含扩展,browserify 的行为是否不同?它对我们应该如何申报出口有额外的限制吗?
实际上这是一个问题,因为我最近tsify
在我的项目中添加了 Typescript。出于某种原因,当我导入从 typescript 编译的文件时,我必须指定.js
扩展名(没有它就无法工作)。.ts
但是当我从另一个文件导入文件时.ts
,我不想指定扩展名,因为我希望 Typescript 拾取.ts
文件(当我不指定扩展名时它会这样做)并 Browserify 拾取编译的 js 文件(它也这样做但无法识别模块)。
javascript - 编译后命名空间未定义
我正在用打字稿编写一个小游戏引擎,当我将其编译为 javascript 时,运行 javascript 时出现错误。它编译也没有错误。
我的主入口文件(main.ts)以这两行开头:
它构建得很好,但是当我运行它时,第二个 require 有一些问题并给出了这个错误:
Uncaught TypeError: Class extends value undefined is not a function or null
核心/对象.ts
核心/组件.ts
然后编译后,它看起来像这样:
这是我正在运行的 gulp 任务:
browserify - 如何在 browserify 中设置模块的 require() 调用中使用的模块名称或路径?
我正在使用 browserify 将可重用的打字稿模块移动到使用 gulp 的浏览器中。
令我惊讶的是,我需要通过包含生成的 common.js 文件
在打字稿或使用 UMD + require JS 的构建中,我需要使用相对路径的文件,而代码完全相同。在我添加 browserify 的那一刻,我得到了绝对路径。我尝试自己编译 typescript 并在没有 tsify 的情况下使用 browserify,但它总是需要一个绝对路径来包含它。所有其他需要 common.js 的模块都将找不到它。我怎样才能解决这个问题?
编辑:示例在 html 文件中的外观:
javascript - 在 browserify 因子包中使用 proxyquire
坚持这个。
我正在使用laravel elxir和tsify来生成我的 js。我通过 factor-bundle 运行 typescript 以将常见的 js 模块拆分为单独的文件。我认为在这种情况下这不会成为问题,因为一切都在 spec.js 中
规格
工厂小部件/index.ts
工厂小部件/test.ts
浏览器服务.ts
在第 262 行出现错误Uncaught TypeError: require.resolve is not a function
。
这是代码(是的,它超过 20,000 行)您还应该如何调试这些东西。¯_(ツ)_/¯
我用 proxyquire 看过 Stubbing。我没有屏住呼吸来回答这个问题。
编辑:06-09-2016 Proxquire 需要覆盖 WidgetFactory 类的 boot 方法中的 require 调用
在工厂小部件/index.ts 中:
angularjs - Angular、Karma、tsify、麻烦
我正在尝试设置测试,我们使用 Angular 1.5、TSify 和 Karma。我非常接近,但我遇到了一个我不太正确的问题:
我正在遵循此处描述的设置:https ://github.com/cmlenz/tsify-test (此示例不包括角度)
我从 angular-mocks 收到一个错误:“无法设置未定义的属性 'mock'”
这必须是时间问题或范围问题 - 角度模拟加载得太快,或者浏览器正在包装角度变量的范围,而模拟看不到它。不知道。
以下是我的 karma.conf.js 文件的相关部分:
这一定与我加载模拟的方式有关——我的角度应用程序不使用它,只是测试,所以这一定与它有关。
有什么提示吗?
typescript - 在 karma 中使用“tsify”启用“对装饰器的实验性支持”
我正在使用 tsify,一个 browserify 插件,在业力单元测试期间转换我的代码。
运行测试时出现这种错误:
TypeScript 错误:src/app/emailLogin/emailLogin.component.ts(14,14):错误 TS1219:对装饰器的实验性支持是一项可能在未来版本中更改的功能。设置“experimentalDecorators”选项以删除此警告。
如何在我的 karma.config.js 中指定的 browserify/tsify 中启用实验装饰器
这是我的 karma.config.js:
这是我的 gulp 文件(我认为这没关系)
typescript - 使用 browserify + babelify + tsify 缺少 TypeScript 类型
我正在尝试将 Angular JavaScript (ES5) 项目逐步迁移到 TypeScript 2.0,并且必须承认我非常挣扎。
所以首先我将 index.js 更改为 index.ts 并使用推荐的安装 typings ( npm install --save @types/node
) 的方法而不是旧的 typings.json 方式。
构建设置使用gulp
with browserify
,现在引入tsify
和 ,babelify
正如这里所建议的那样。
浏览器化
tsconfig.json
但是构建失败:
TypeScript 错误:.tmp/public/app/index.ts(4,15):错误 TS2304:找不到名称“require”。
tsify
似乎没有将安装的类型复制到输出目录,这会导致上述错误。
关于如何解决问题的任何建议?
编辑
将node_modules/@types文件夹复制到我的 C: 驱动器的根目录可以消除错误,但我不知道为什么......
gruntjs - 如何设置 grunt + browserify + tsify + babelify?
我正在努力设置 grunt + browserify + tsify + babelify (带调试)。
下面的 gruntfile 设置确实编译了 typescript,但没有发生 babel 转换。
任何人都可以让我知道如何做到这一点?(我可能需要使用 gulp 来做到这一点??)
tsconfig.json 的目标设置为“es2015”。
typescript - 如何将类型化属性添加到模块中的窗口对象?
我目前有一个文件main.ts
,其代码如下:
这工作正常,但我试图在一个单独的文件中获取 Window 类型以避免代码重复。我目前的尝试如下所示:
和:
这给了我一个Error TS2339: Property 'throttleScreenResizeRender' does not exist on type 'Window'.
关于编译的信息。
我正在使用 Typescript 2.0.3 版
我怎样才能做到这一点?
编辑
如手册所示,我正在将 Browserify 与 tsify 一起使用。这是我的 gulp 文件:
相关packages.json
: