如何创建一个包含Angular 2模块的javascript文件,该模块可以被其他应用程序使用,但是在运行时直接从中央服务器加载并且不捆绑到特定应用程序的代码中?
可以将其视为Angular 2库的CDN.要求是此库的使用者将在其页面上包含单个脚本.
这是以这种方式实现它的要求,所以我对任何建议将库捆绑到单个应用程序的输出文件中的答案不感兴趣.必须在运行时直接从库的服务器加载库脚本.
CustomAuthModule
这是所需的工作流程(从高级别).
http://server-url/CustomAuth/script
.不应要求消费者知道有关systemjs或webpack等模块加载器的任何信息.我已经做了很多关于这方面的研究,我没有任何运气可以搞清楚.任何帮助将不胜感激.
简短版本:
如何启动Karma并让它在与Karma启动页面相同的浏览器中自动打开debug.html文件?
长版:
我不是很喜欢使用控制台记者的Karma,所以我一直在使用karma-jasmine-html-reporter-livereload输出到Karma的localhost:9876/debug.html文件.问题是,每次我开始调试会话时,我都必须单击业力打开的网页中的"调试"按钮.
我想找到一种方法让业力通过gulp任务自动打开debug.html页面.我在多个浏览器中运行测试,因此我希望在每个Karma打开的浏览器中打开debug.html页面作为第二个选项卡.当karma关闭时,我还希望能够关闭该debug.html选项卡.我尝试了很多东西,没有成功.
这是我的gulp任务.'watch'任务监视我的源TypeScript文件,并将它们编译成javascript ...没什么特别的.
gulp.task('watch-test', ['watch'], function (done) {
//start a livereload server so that the karma html
//reporter knows to reload whenever the scripts change
livereload.listen(35729);
gulp.watch('dist/src/**/*.js').on('change', livereload.changed);
new KarmaServer({
configFile: __dirname + '/karma.conf.js',
singleRun: false
}, done).start();
});
Run Code Online (Sandbox Code Playgroud) 问题:在Google表格中,仅使用内置函数,如何编写过滤器以根据每行中不存在于另一个范围的有效值列表中的列来排除记录.
细节
我正在使用Google表格编写一份财务电子表格,其中我的所有费用和收入都输入到一张名为"交易"的表格中.我有一个名为常数的单独表格,其中列出了收入类别列表和费用类别列表.
以下是一些用于问题的示例数据:
常量
交易
我有一张名为ByMonth的工作表,我想在一个部分显示所有费用交易,并在一个单独的部分显示所有收入交易.目标:
我需要在谷歌工作表功能基本上做这个SQL查询:
select date, category, amount from transactions
where category not in (
select * from expense_categories
)
Run Code Online (Sandbox Code Playgroud)
但我无法弄清楚如何让Google表格让我用他们的功能做一个IN概念.
这是一个单元函数表达式,我用它来根据日期字段过滤行:
=filter(Transactions!A2:C,
DATEVALUE(Transactions!A2:A) >= date(2015,4,1),
DATEVALUE(Transactions!A2:A) <= date(2015,4,30)
)
Run Code Online (Sandbox Code Playgroud)
我将向filter()函数添加第三个条件,并且第三个条件将以某种方式将每行数据的Category列与有效费用或收入类别列表进行比较并返回布尔值.
以下是我尝试过的其他一些事情,但无济于事,包括MATCH,ARRAYFORMULA等的一些变化:
=filter(Transactions!A2:C, row(Transactions!B2:B) = UNIQUE(Constants!A2:A))
=filter(Transactions!A2:C, Transactions!B2:B = UNIQUE(Constants!A2:A))
=filter(Transactions!A2:C, Transactions!B2:B = Constants!A2:A)
Run Code Online (Sandbox Code Playgroud)
有什么建议?
我们有一个webapp,它通过.NET IHttpHandler(称为proxy.ashx)路由许多请求,用于CORS和安全目的.某些资源加载速度很快,而其他资源则根据这些资源所需的大量计算加载速度慢.这是预料之中的.
在负载很重的情况下,proxy.ashx会慢慢爬行,所有资源都会永远加载.在这些峰值加载时间内,如果绕过代理并直接加载资源,则会立即加载,这意味着代理是瓶颈.
(即http://server/proxy.ashx?url = http:// some_resource加载缓慢,但http:// some_resource自行加载速度快).
我有一个假设,即响应性降低是因为IHttpHandler是同步编码的,当有太多长时间运行的请求处于活动状态时,IIS请求线程都忙.我创建了一个快速A/B测试应用程序来验证我的假设,我的测试结果表明情况并非如此.
这篇文章是我基于请求线程池的理解.
在Web服务器上,.NET Framework维护一个用于为ASP.NET请求提供服务的线程池.当请求到达时,将调度池中的线程来处理该请求.如果同步处理请求,则在处理请求时阻止处理请求的线程,并且该线程无法为另一个请求提供服务....
但是,在异步调用期间,服务器在等待第一个请求完成时不会阻止响应其他请求.因此,当有许多请求调用长时间运行的操作时,异步请求会阻止请求排队.
在下面的示例中,理论上,同步处理程序应该在某个阈值之后占用请求线程,从而阻止更多新请求启动.异步处理程序应该允许更多的请求排队,因为每个请求几乎立即将其请求线程返回到线程池,等待它Task.Delay
,允许该请求线程在前一个请求仍在等待时处理新请求.
同步HttpHandler
<%@ WebHandler Language="C#" Class="SyncHandler" %>
using System.Web;
using System.Threading;
public class SyncHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
//BLOCKING artifical pause to simulate network activity
Thread.Sleep(300);
var Response = context.Response;
Response.Write("sync response");
}
public bool IsReusable { get { return true; } }
}
Run Code Online (Sandbox Code Playgroud)
异步处理程序
<%@ WebHandler Language="C#" Class="AsyncHandler" %>
using System.Web;
using System.Threading.Tasks;
public class …
Run Code Online (Sandbox Code Playgroud) 我想创建一个具有接口所有属性的类,但实际上并没有声明这些属性本身。接口属性是在构建过程中附加的,并且将在运行时存在。
我发现这篇文章指出了使用的方向Partial<T>
……但这似乎不起作用。以下代码不会产生编译错误。
interface Animal {
name: string;
}
interface HasConstructor {
constructor: any;
}
//Do this to supress this error: "Type 'Dog' has no properties in common with type 'Partial<Animal>"
type OptionalAnimal = Partial<Animal> & HasConstructor;
class Dog implements OptionalAnimal {
public constructor() {
}
public breed: string;
}
Run Code Online (Sandbox Code Playgroud)
但是,该name
属性在 Dog 实例上不可用。
var spot = new Dog();
spot.name = "Spot"; //ERROR: Property 'name' does not exist on type 'Dog'
Run Code Online (Sandbox Code Playgroud)
我可以通过创建另一种类型并像这样引用它来解决这个问题:
type AnimalDog …
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Mozilla 的源地图库将转换后的文件中的位置映射回其原始位置。我发现了一种情况,源地图找不到有效位置,但我不明白为什么。
这是我的源文件
sub main()
end sub
Run Code Online (Sandbox Code Playgroud)
出于这个问题的目的,我正在创建一个源映射,该映射可以完美地模拟源文件而无需转换。因此,理论上任何位置请求都应该返回完全相同的位置。但是,这就是我现在在以下代码片段中看到的内容。在这种情况下,{line: 2, column: 1}
返回{line: null, column: null}
,但{line: 2, column: 0}
正确返回{line: 2, column: 0}
。
我究竟做错了什么?
sourceMap.SourceMapConsumer.initialize({
"lib/mappings.wasm": "https://unpkg.com/source-map@0.7.3/lib/mappings.wasm"
});
//create a source map
let codeAndMap = new sourceMap.SourceNode(null, null, 'main.brs', [
new sourceMap.SourceNode(1, 0, 'main.brs', 'sub main()'), '\n',
new sourceMap.SourceNode(2, 0, 'main.brs', 'end sub')
]).toStringWithSourceMap();
sourceMap.SourceMapConsumer.with(codeAndMap.map.toJSON(), null, (consumer) => {
console.log('column 0', JSON.stringify(
//returns {line: 2, column: 0}
consumer.originalPositionFor({
line: 2,
column: 0, …
Run Code Online (Sandbox Code Playgroud)现在,如果您遵循自定义元素spec的v1的确切规范,则不可能在不支持类的浏览器中使用自定义元素。
有没有一种方法可以创建v1自定义元素而不使用类语法,以使它们在Chrome,FireFox和IE11中完全起作用。另外,由于IE11不对自定义元素提供本机支持,所以我假设我们可能需要使用一些pollyfills,那么,为了在IE11中实现此功能,我们需要哪些polyfills或库?
我已经弄乱了Polymer 2,Polymer 3和Stencil,但是它们对于我们要创建的某些东西来说有点繁重。
这个问题似乎是在正确的轨道上,但是让它在IE11中工作时遇到了一些麻烦,因此,如何才能在IE11中使用Reflect.construct来实现自定义元素?
应该如何清理 web-audio-api AudioNode 以释放其内存?我正在调用oscillatorNode.stop()
并oscillatorNode.disconnect()
基于这篇文章,但它似乎没有帮助,最终导致内存泄漏。这篇文章不适用,因为我一停止振荡器节点就删除引用。
我创建了一个显示问题的示例网站。以下是重现的步骤。
<html>
<body>
<button onclick="go()">Go</button>
<button onclick="cancel=true">Cancel</button>
<div id="status"></div>
<script>
var cancel = false;
var statusEl = document.getElementById('status');
async function go() {
cancel = false;
for (var i = 0; i < 100000; i++) {
if (cancel) {
return;
}
statusEl.innerHTML = i;
play();
await new Promise((resolve) => { setTimeout(resolve, 1); });
stop();
}
}
var ctx …
Run Code Online (Sandbox Code Playgroud) javascript ×4
.net ×1
angular ×1
apachebench ×1
benchmarking ×1
c# ×1
debugging ×1
ecmascript-5 ×1
gulp ×1
karma-runner ×1
memory-leaks ×1
node.js ×1
source-maps ×1
spreadsheet ×1
systemjs ×1
typescript ×1
umd ×1
webpack ×1