小编tan*_*y_k的帖子

Chrome 上 msSaveOrOpenBlob 的替代方案

我需要找到“msSaveOrOpenBlob”的替代品,它适用于 IE、Firefox 和 Chrome。特别是在 Chrome 上,这不起作用,并且不显示用于选择保存或打开文件的对话框。

你能建议我如何打开对话框让用户选择是否要保存或打开文件吗?

我实际上正在使用 Angular 6。

javascript internet-explorer mozilla google-chrome angular

6
推荐指数
2
解决办法
3万
查看次数

如何使用 MemoryRouter 来测试 useParams 调用

我有一个假设的 React 组件,Component.ts其代码结构类似于:


import React from 'react';
import { useParams } from 'react-router-dom';

export const Guide = () => {

  const { serviceId } = useParams();

  return (
    <p>{serviceId}</p>
  )

}

Run Code Online (Sandbox Code Playgroud)

为了测试该组件的行为,我尝试在我的Component.test.ts文件中执行类似于以下内容的操作:


import React from 'react';
import { render } from '@testing-library/react';
import { Component } from './Component';
import { Route, MemoryRouter } from 'react-router-dom';


test('my Component test', async () => {

  const someServiceId = 'some-service-id';

  const { findByText } = render(
    <MemoryRouter initialEntries={[`guides/${someServiceId}`]}>
      <Route path='guides/:serviceId'> …
Run Code Online (Sandbox Code Playgroud)

typescript reactjs react-router-dom

6
推荐指数
1
解决办法
1万
查看次数

通过 GitHub Actions 在 AWS ECS 上使用 Docker Compose 进行部署

我最近开始尝试 ECS、Docker Compose 和 context,这真的很有趣。我已经设法使用docker compose up\xc2\xa0 和 ecs-context 通过终端部署和托管一个 compose 文件,但我还想通过 Github 操作之类的东西来自动执行此操作。

\n

我正在努力了解如何设置它,而且我还没有找到它的指南。

\n

有没有什么好的资源可以进一步研究这个问题?通过 Github 在 AWS 上进行 CI/CD 的替代或什至更好的方法是什么?

\n

amazon-web-services amazon-ecs docker docker-compose github-actions

6
推荐指数
1
解决办法
3163
查看次数

window.location.search的sinon存根

我试图测试一个调用window.location.search的简单函数.我正在尝试了解如何存根此调用,以便我可以返回我选择的网址.

功能:

getParameterByName: (name) =>    
  name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]")
  regexS = "[\\?&]" + name + "=([^&#]*)"
  regex = new RegExp(regexS)    
  results = regex.exec(window.location.search) //Stub call to window.location.search
  if(results == null)
    return ""
  else
    return decodeURIComponent(results[1].replace(/\+/g, " "))
Run Code Online (Sandbox Code Playgroud)

测试用例:

describe "Data tests", () ->
  it "Should parse parameter from url", () ->        
    data = new Data()

    console.log("search string: " + window.location.search) //prints "search string:"
    window.location.search = "myUrl"
    console.log("search string: " + window.location.search) //prints "search string:"
    console.log(data.getParameterByName('varName'))

    expect(true).toBe(true)
Run Code Online (Sandbox Code Playgroud)

我最初的尝试是直接返回一个值:

sinon.stub(window.location.search).returns("myUrl")
Run Code Online (Sandbox Code Playgroud)

当然,这不起作用.我认为我没有正确指定存根,但它显示了我的意图. …

stubbing coffeescript sinon buster.js

5
推荐指数
1
解决办法
8841
查看次数

将 Elastic Beanstalk URL 重定向到域名

我有一个托管在 AWS Elastic Beanstalk 上的应用程序,它被分配了一个环境 URL,如下所示:

<my-appname>.<aws-region>.elasticbeanstalk.com

我还注册了一个域名,如下:

my-appname.com

在 AWS Route 53 中,我指出了A ALIASEBmy-appname.com环境:

my-appname.com>A ALIAS <my-appname>.<aws-region>.elasticbeanstalk.com

我通过我的注册商设置了 Route 53 域名服务器,以通过 Amazon 管理 DNS。

一切正常

我想了解如何确保对<my-appname>.<aws-region>.elasticbeanstalk.com>域的任何请求都到达301my-appname.com

我当前使用 ApacheRewriteRule将所有非 www 请求重定向到网站的 www 版本,在文件中使用以下内容.config

<If "'%{HTTP_HOST}' !~ /^www\./">
    RewriteRule ^(.*)$ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</If>
Run Code Online (Sandbox Code Playgroud)

HTTP_HOST简单地更改为是一个好的做法吗my-appname.com

编辑:无论如何,这种方法似乎不起作用。不知道为什么?

apache dns amazon-web-services amazon-route53 amazon-elastic-beanstalk

5
推荐指数
2
解决办法
2715
查看次数

Google javascript API库 - 日历观看通知

我正在尝试使用JS客户端库订阅日历事件通知,如下所示:

gapi.client.load('calendar', 'v3', function () {
            var request = gapi.client.calendar.events.watch({
                'calendarId': cl.gCalendarID,
                'id': unid,
                'type': "web_hook",
                'address': {my url here}
            });
            request.execute(function (resp) {
                console.log(resp);
            });
        });
Run Code Online (Sandbox Code Playgroud)

但是我只是继续得到400回复,并且没有任何帮助Entity.Resource"

在我得到的响应的数据对象中 Domain:global, Message: Entity.Resource, reason: Required"

我已经通过oauth2进行了身份验证,并且我已经授予了访问我的Google帐户的权限,并且我可以成功检索日历列表,并且我正在从他们的日历中检索事件,但这种订阅手表的方法不起作用?请帮助我在Google上找不到任何关于此的内容.

javascript calendar google-api

4
推荐指数
1
解决办法
1074
查看次数

带有过渡和translateY 的 Safari 错误:“跳跃”元素

我正在使用translateY 移动一个元素。除Safari(12.1.2 和 13.1.2)和GNOME Web (WebKit),在 Chrome、Firefox、IE、旧版 Edge 下一切正常。

在 Safari 下,元素会“跳跃”。这是一个小例子(也可以在CodePen上找到):

.parent {
  height: 50px;
  background-color: blue;
  padding: 10px;
}

.child {
  background-color: yellow;
  padding: 10px;

  transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
}
.child.move {
  transform: translateY(-150%);
  padding: 0; /* If 10px: no bug */
}
Run Code Online (Sandbox Code Playgroud)
<br><br><br>
<div class="parent">
  <div class="child" onclick="this.classList.toggle('move')">Click me</div>
</div>
Run Code Online (Sandbox Code Playgroud)

我在WebKit bug tracker上找不到答案。

你知道一些解决方法吗?


其他堆栈溢出相关问题:

css safari webkit css-transitions

4
推荐指数
1
解决办法
4794
查看次数

使用正则表达式将字符添加到JavaScript中每一行的开头

如何使用replace函数使用正则表达式将单个字符添加到JavaScript中的每一行?

javascript regex replace

3
推荐指数
1
解决办法
2269
查看次数

ASP.NET 5 MVC 6:如何配置启动以在不在任何mvc路由上时发送html文件

我正在使用React-Router构建SPA应用程序来处理前端路由.

我正在尝试配置ASP.NET 5 Startup.cs文件以使用MVC,但是当路由与我的任何API路由都不匹配时,发送index.html文件以便它能够处理react-routers浏览器历史记录作为执行陈述这里.

到目前为止,我只能在默认路由上发送index.html文件,即在localhost:3000之后没有发送.

到目前为止我的启动配置方法.谢谢

        app.UseIdentity();
        app.UseIISPlatformHandler();
        app.UseDefaultFiles(new DefaultFilesOptions {
            DefaultFileNames = new List<string> { "index.html"}
        });
        app.UseStaticFiles();
        app.UseMvc();
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-core-mvc react-router asp.net-core

3
推荐指数
1
解决办法
1982
查看次数

如何检查对象中的每个属性是否为null

我有一个对象有时它是空的,所以{}其他时候它将有内部属性设置为null.

{
  property1: null,
  property2: null
}
Run Code Online (Sandbox Code Playgroud)

如何确定此对象中的所有属性是否为空.如果它们都为null,则返回false.

目前我正在使用lodash检查第一种情况,其中对象只是{}空的.但我还需要介绍第二种情况.

if (isEmpty(this.report.device)) {
  return false;
}
return true;
Run Code Online (Sandbox Code Playgroud)

javascript lodash

2
推荐指数
2
解决办法
3922
查看次数

TypeScript 可选属性不接受未定义的值

<MyCustomField
    type={props.type}
Run Code Online (Sandbox Code Playgroud)

MyCustomField 的type类型定义:

type?: string;
Run Code Online (Sandbox Code Playgroud)

props.type的类型定义:

type?: string;
Run Code Online (Sandbox Code Playgroud)

由于某种原因,我收到此错误: 图片

感觉就像我不小心打开了某些设置。我的 tsconfig:

<MyCustomField
    type={props.type}
Run Code Online (Sandbox Code Playgroud)

编辑:此外,它编译得很好:

图像

只是 VSCode Intellisense 不喜欢它。

编辑2:

if (!clone[index].options) throw Error(`Data at index ${index}, ${optionIndex} doesn\'t have options`);
if (type === FieldDataTypeEnum.RadioButton) {
    clone[index].options.forEach(o => o.checked = false);
} else {
    clone[index].options[optionIndex].checked = true;
}
Run Code Online (Sandbox Code Playgroud)

这也给了我一个错误,指出clone[index].options可能是未定义的,即使if语句应该忽略这一点:

图像

但仍然编译得很好。

javascript-intellisense typescript reactjs visual-studio-code

2
推荐指数
1
解决办法
1680
查看次数

JavaScript暴力成为Web表单

在此输入图像描述

在答案框的正上方,错误的尝试会出现错误,表示"答复不正确".此外,我们有无限次尝试.

以上是包含详细信息的网站预览.

码:

<form id="level" method="post"> 
    <label for="answer">Answer:</label> 
    <input type="text" name="answer" id="answer" /> 
    <input type="submit" name="submit" id="submit" value="Submit" /> 
</form>
Run Code Online (Sandbox Code Playgroud)

所以我们在这里只知道表单没有动作源.唯一的方法(我知道)是破解javascript.就像过去常见的Facebook和Orkut垃圾邮件一样,我们必须在URI中添加javascript,地址栏.

我已经构建了一个javascript(用于地址栏)链接到其他javascript文件.

我想知道你天才的一些提示和技巧(顺便提前谢谢,我知道你们非常慷慨)

如果有人知道一些在线javascript暴力脚本或在线可以通过javascript链接的东西.

javascript webforms brute-force

0
推荐指数
1
解决办法
2万
查看次数