草庐IT

导出接口

全部标签

javascript - 在 Node js中将多个文件导出为单个模块

这是我想要实现的一个简单示例:foo.js:module.exports.one=function(params){*/stuff*/}bar.js:module.exports.two=function(params){*/stuff*/}stuff.js:constfoo=require('Path/foo');constbar=require('Path/bar');我想做:其他文件.js:stuff=require('Path/stuff');stuff.one(params);stuff.two(params);我不想[在stuff.js中]module.exports={o

javascript - 你能在 TypeScript 接口(interface)中定义字符串长度吗?

我有一个这样的结构:structtTest{charfoo[1+1];charbar[64];};我有TypesScriptexportinterfacetTest{foo:string;bar:string;}有没有办法将[64]和[1+1]添加到类型中? 最佳答案 正如评论所说:js/ts不支持char类型,无法声明数组/字符串长度。不过,您可以使用setter强制执行:interfacetTest{foo:string;}classtTestImplementationimplementstTest{private_foo:s

javascript - 默认导出后的分号

我读了here我不需要在默认导出后加上分号。所以这个程序有一个不必要的分号:exportdefaultfunction(){};但是如果我的模块继续这样:exportdefaultfunction(){};(()=>{//creatinganewfunctionscope})();那分号就不能留了那么这里发生了什么?语法上说我不需要分号,但如果我不加分号,代码还有其他含义吗?更新:如果我离开分号:exportdefaultfunction(){}(()=>{//creatinganewfunctionscope})();然后导出的函数被调用而不是被导出。babeljs.io将后者编译成

javascript - 在横向模式下将 .rdlc 报告导出为 pdf

我的报告属性设置为宽度11英寸和高度8.5英寸。我的正文属性设置为宽度10英寸和高度7.5英寸,边距为0,但报告始终以纵向模式显示。编写页面代码的人正在aspx页面内使用reportviewer控件,该页面从JavaScript弹出窗口弹出,将响应写入pdf。如果报表在报表查看器中打开,它会像预期的那样横向显示。有什么想法吗? 最佳答案 报表(.rdlc)的宽度、高度和方向取决于两个因素:报表上应用了哪些页面设置。我们可以通过打开报告将方向设置为横向在解决方案资源管理器中添加一些代码行来定义宽度、高度和方向。FunctionSetP

javascript - Highcharts:导出时重复数据标签文本

我在Highcharts导出(到PNG、SVG等)时遇到了一个奇怪的故障。本质上,导出时,图表上的数据标签会变成乱码,因此它们会像这样重复:我已经尝试更改导出图像的尺寸(甚至与原始div尺寸完全匹配),但我仍然遇到同样的问题。我认为唯一可能影响它的是自定义格式化程序函数(显示每个数据点总数后的百分比),但没有对文本大小或任何内容的操作。有什么想法吗? 最佳答案 这看起来像是导出服务中的一个新问题。我可以通过禁用数据标签上的文本阴影来解决这个问题。为此,我添加了:dataLabels:{style:{textShadow:''}}

javascript - 在 JavaScript 类型文件中声明接口(interface)

项目信息我正在开发一个使用.d.ts文件的JavaScript项目。这是我之前提出的问题的后续问题,因此您可以查看有关该项目的更多信息here.问题虽然我通常可以从类型文件中提取函数,但我无法提取空的或仅由接口(interface)组成的接口(interface)或namespace。我通过为每个接口(interface)创建一个const实现并在注释中使用@typeofConstantImplementation暂时解决了这个问题。请参见下面的示例://TypingsFileexportnamespacetest{exportinterfaceITest{foo:string;bar

javascript - 我们可以从 requirejs 中的模块导出多个非 AMD 函数吗?

如果我有一个名为old.js的非AMD模块,并且在这个脚本中我定义了两个函数f1和f2。我需要使用它们,如何导出两者?require.config({paths:{"jquery":"https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min",},shim:{"old":{deps:["jquery"],exports:["f1","f2"]}},urlArgs:"bust="+(newDate()).getTime()});这行不通。我会得到split错误。该文档没有提到多个(http://requirejs.org/

javascript - 使用 ES6 模块导出/导入单类方法?

假设我在fileA.js中有一个像这样的简单类:classfoo{constructor(x){this.name=x}fooMethod(x){returnx+'hello';}}我想像这样在fileB.js中导入和使用fooMethod:import{fooMethod}from'./fileA';classbar(){...barMethod(x){returnfooMethod(x);}}如何在fileA中编写export来实现这一点? 最佳答案 您必须在原型(prototype)上导出它。但请记住,如果您这样做,您将不会在

javascript - 如何对 ExtJS 或类似的基于 JavaScript 的接口(interface)进行单元测试?

我正在使用PHPUnit来测试我的PHP源代码,但我也需要一种方法来测试客户端代码。我使用ExtJS来构建调用服务器获取数据的相当复杂的接口(interface)。我想知道如何测试UI? 最佳答案 最近刚推出一个新工具,叫做Siesta.它专门针对ExtJS(尽管也可以测试任何JS代码),并且非常适合测试ExtJSUI代码,因为它具有内置的ExtJS事件模拟和记录。我个人也用Jasmine对于我的单元测试,ExtJS团队内部也是如此,尽管它不是特别适合UI测试(尽管它非常适合测试代码)。

javascript - 什么是 ES6 中的动态导出

我听说es6中不允许动态导出/导入。Thiswebsite使用示例exportdefault5*7;就好像它是合法的静态导出一样。这似乎是合理的,因为它清楚地计算出静态值35,但我想知道现在究竟什么才算静态导出。ThisCode使用exportdefaultBackbone.Router.extend({...});就好像它是合法的静态导出一样。这对我来说似乎很可疑,因为它对我来说似乎是动态导出(导出函数调用的结果)。 最佳答案 第二个示例仅导出函数调用的结果,它是静态的。该函数仅被调用一次,因此每次导入的结果始终相同。举例说明:f