小编Dar*_*und的帖子

量角器 - 如何处理动画严重的网站?

我必须为一个Angular应用程序的网站编写测试,并且有大量的动画.几乎所有的东西都有一个"迷你"的窗口,从顶部滑入并进入中心,然后它的内容从右边进入,直到进入它们,依此类推.

这打破了我的测试,很多.量角器看到元素,因为它们被显示但是它们无法点击它们,因为它们正在移动并且它抛出一个错误,说其他元素将接收到点击.这经常发生,我不知道如何处理它(除了使用browser.sleep(xxxx)).

除了使用睡眠功能外,有没有解决方法呢?如果我真的没有其他选择,我必须在第二排使用它...

**我试过这个browser.manage().timeouts().implicitlyWait(30000);并没有帮助.

PS我也有一些案例,其中量角器试图在元素可见之前点击它.

我可以制作一个简短的视频来展示动画是什么,如果需要的话.

test.describe('Profile tests: ', function(){
this.timeout(0);

test.before(function(){
    browser.get('......');
});

test.it('Change Username', function() {
    var newUsername = 'Sumuser';

    welcome.continueLink.click();  
    bonus.takeBonus.isDisplayed().then(function() {                
        bonus.takeBonus.click();            
    });
    entrance.openEntrance.click();

    browser.sleep(300);
    loginBasic.openNormalLogin.isDisplayed().then(function() {
        loginBasic.openNormalLogin.click();
    });

    browser.sleep(300);
    login.usernameField.isDisplayed().then(function() {
        login.usernameField.sendKeys(username);
    });

    login.passwordField.sendKeys(password);
    login.loginButton.click();
    infoBar.avatar.click();

    browser.sleep(1000);
    myProfile.editProfileButton.click();

    browser.sleep(1000);
    username.field.clear();
    username.field.sendKeys(newUsername);
    editProfileButtons.saveChanges.click();

    browser.sleep(1000);
    myProfile.username.getText().then(function (text){
        expect(text).to.equal(newUsername);
    });
});
});
Run Code Online (Sandbox Code Playgroud)

我也尝试在配置文件中添加以下内容以禁用动画:

onPrepare: function() {
    var disableNgAnimate = function() {
        angular.module('disableNgAnimate', []).run(['$animate', function($animate) {
            $animate.enabled(false);
        }]);
    };

    browser.addMockModule('disableNgAnimate', disableNgAnimate);
}
Run Code Online (Sandbox Code Playgroud)

javascript mocha.js angularjs protractor

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

在 Material-UI 中的自动完成选项末尾添加一个按钮

我正在尝试创建一个自动完成组件,人们将使用它从项目列表中选择一个项目,我已经做到了,没有问题。

\n

问题是,我还想在列表末尾添加一个按钮(就像列表中始终存在的最后一项),这样,如果该人正在查找的项目不存在,则该人可以单击该按钮添加新项目。这是同一个问题并且已得到解答,但是对于react-select,我在material-ui 的API 中找不到任何可以执行相同操作的内容。在反应选择的选项末尾添加一个按钮

\n

一个例子(取自上面的问题):https ://i.stack.imgur.com/WRFd8.png

\n

我尝试向 TextField 添加 onClick,但是当然,只要有人单击自动完成,就会触发 onClick

\n
  <Autocomplete\n    id="supplierIdd"\n    style={{ width: 300 }}\n    options={suppliers.map((supplier) => supplier.name)}\n    renderInput={(params) => \n      <>\n        <TextField {...params} label="\xd0\x91\xd1\x83\xd0\xbb\xd1\x81\xd1\x82\xd0\xb0\xd1\x82" margin="normal" onClick={()=>{console.log("hi")}} variant="outlined" />\n      </>\n    }\n  />\n
Run Code Online (Sandbox Code Playgroud)\n

我还尝试添加到选项数组,但当然,这只是选项数组,而不是元素,那么我将在哪里添加一个或任何元素?

\n

reactjs material-ui

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

Nextjs 部署到 Vercel 的 SocketIO,套接字未连接

我正在尝试创建一个下一个应用程序,它也可以通过套接字与其后端实时通信,并且我正在使用socket.io它。它在本地运行得很好(即使是在构建时),但是当部署到 vercel 时,我收到以下类型的错误WebSocket connection to '<URL>' failed: WebSocket is closed before the connection is established.

首先,我创建了一个自定义 Nextjs 服务器:

import { createServer } from "http";
import { parse } from "url";
import { Server as SocketIOServer, Socket } from "socket.io";
import next from "next";

const port = parseInt(process.env.PORT || "3000", 10);
const dev = process.env.NODE_ENV !== "production";
const app = next({ dev });
const handle = app.getRequestHandler();

console.log("hello");

app.prepare().then(() => {
  const server = createServer((req, res) => { …
Run Code Online (Sandbox Code Playgroud)

websocket socket.io next.js vercel

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

Monogame旋转精灵

我试图在Monogame中旋转一个精灵,但由于某种原因我无法正确!如果有人解释轮换之谜,我将非常感激!

这是我用来绘制和旋转我的精灵的代码行,只是注意变量y是我在每次更新时将其递增0.1的角度,这仅用于测试目的.如何让大炮围绕图像内的原点旋转?例如,它的中心点就像直升机螺旋桨?检查视频以查看此行代码的结果.

        spriteBatch.Draw(cannon.image, new Rectangle(300, 300, cannon.image.Width, cannon.image.Height), null, Color.White, y, new Vector2(0, 0), SpriteEffects.None, 0f);
Run Code Online (Sandbox Code Playgroud)

c# image-rotation monogame

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

有条件地创建对象字段的简单方法?

我正在开发一个严重依赖数据输入的应用程序,因此我必须使用必需和非必需数据构建不同类型的对象,非必需数据块是我的问题,因为这会导致很多额外的代码,我想知道是否有办法避免这种情况。

这里我有一个有 6 个字段的表单(它只是一个例子,但我在应用程序的许多其他地方都有相同的情况),其中 2 个是必需的,其余的不是,我写了这个函数来处理对象创建:

  const handleAddSupplier = (e) => {
    e.preventDefault();
    const formData = e.target.elements;

    const supplierData = {
      name: formData.name.value,
      companyId: formData.companyId.value,
      ...((formData.country.value || formData.city.value || formData.postalCode.value || formData.street.value) && {
        address: {
          ...(formData.country.value && { country: formData.country.value }),
          ...(formData.city.value && { city: formData.city.value }),
          ...(formData.postalCode.value && { postalCode: formData.postalCode.value }),
          ...(formData.street.value && { street: formData.street.value }),
        },
      }),
    };

    console.log(supplierData);
  };
Run Code Online (Sandbox Code Playgroud)

它有效,但在我看来它的代码太多,我怀疑有更简单的方法来做到这一点。

必须创建的对象的“签名”是:

{
  name: "",
  companyId: "",
  address: {
    country: "",
    city: "",
    postalCode: "", …
Run Code Online (Sandbox Code Playgroud)

javascript

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

从字符串C#中删除空格(简单!)

嗨伙计们,我不知道为什么我的代码不工作,任何帮助将非常感谢!

我有一个给定的字符串,在每个数字之间填充数字和空格我必须删除空格,以便我将所有数字粘在一起.

    string nums = "1 2 3 4 5";
    for (int i = 0; i < nums.Length; i++)
    {
        if (nums[i].ToString() == " ")
        {
            nums[i].ToString() = "";
        }
    }
Run Code Online (Sandbox Code Playgroud)

我也尝试过使用.Replace("",""); 但再一次没有成功,我无法弄清楚我做错了什么..我需要一个简单,初学者友好的解决方案!

c# string spaces

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

.OfType&lt;&gt;() 从基本类型列表中提取派生类型

我什至不确定是否可以做我想做的事情......但是,我有一个字符列表(Character是基本类型),它包含从Character类型(如WarriorsMages)派生的项目。

继承链是:

Character->Melee->Warrior 

Character->Spellcaster->Mage 
Run Code Online (Sandbox Code Playgroud)

我想在一行代码中提取所有法师和所有战士。

我设法做到了OfType,但无法使用.Where

我试过以下

List<Character> chars = new List<Character>()
{
    new Warrior(),
    new Warrior(),
    new Warrior(),
    new Mage(),
    new Mage(),
    new Mage(),
};

List<Melee> melees = chars.OfType<Melee>().ToList(); // works
List<Melee> melee = chars.Where(c => c is Melee).ToList(); // doesnt work
Run Code Online (Sandbox Code Playgroud)

这是错误

严重性代码说明项目文件行抑制状态错误 CS0029 无法将类型 System.Collections.Generic.List<MagicDestroyers.Characters.Character> 隐式转换为 System.Collections.Generic.List<MagicDestroyers.Characters.Melee.Melee>

显然我需要执行一些类型转换,我只是不知道在哪里做?

编辑:问题是如何通过使用.Where带有的行来获得相同的结果c => c is Melee,因为它很容易阅读。

c# lambda

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

C#列表初始化列表,{new List <int>(){1,2,3}}不起作用?

我正在尝试创建一个整数列表列表,我想在不使用.Add的情况下"内联",但它不起作用,为什么?

// This is working
List<List<int>> lists = new List<List<int>>();
lists.Add(new List<int>() { 1, 2, 3 });
lists.Add(new List<int>() { 4, 5, 6 });
lists.Add(new List<int>() { 7, 8, 9 });

// This compiles, no red, but is not working, the list stays empty
List<List<int>> secondList = new List<List<int>>();
{
    new List<int>() { 1, 2, 3 };
    new List<int>() { 4, 5, 6 };
    new List<int>() { 7, 8, 9 };
};
Run Code Online (Sandbox Code Playgroud)

另外,为什么第二个例子需要; 列表之间而不只是","与某种类型的列表一样?

PS解决了我刚刚意识到我有另一个问题,我List<List<int>> list = new …

c# list

-1
推荐指数
1
解决办法
220
查看次数

在我的类中使用许多枚举时的Stackoverflow异常

我有一些枚举声明,因为我不明原因导致StackOverflowException.

我有以下内容:

public enum PrimaryAttribute
{
    Strength,
    Agility,
    Intelligence
}

public enum Class
{
    Tank,
    Fighter,
    Sorcerer
}

public class Hero
{
    public PrimaryAttribute PrimaryAttribute { get; private set; }
    public Class Class 
    {
        get
        {
            return Class;
        }
        set
        {
            if (Class == Class.Tank)
            {
                PrimaryAttribute = PrimaryAttribute.Strength;
                IsBlocking = true;
            }
            else if (Class == Class.Fighter)
            {
                PrimaryAttribute = PrimaryAttribute.Agility;
                IsBlocking = false;
                IsDodging = true;
            }
            else if (Class == Class.Sorcerer)
            {
                PrimaryAttribute = PrimaryAttribute.Intelligence;
                IsBlocking = …
Run Code Online (Sandbox Code Playgroud)

c# stack-overflow enums

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