AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / coding / 问题

All perguntas(coding)

Martin Hope
user3161924
Asked: 2025-04-26 14:31:17 +0800 CST

Manter referência à estrutura na variável membro da classe C#?

  • 5

Gostaria de saber qual é a maneira correta em C# de fazer essencialmente a mesma coisa que este código C++, que contém um ponteiro (referência) para um objeto de classe ou struct. Usarei struct neste exemplo, já que C# trata objetos struct/class de forma diferente.

struct sMyStruct { .. blah .. };

class MyClass { 
  sMyStruct *RefToStruct=nullptr;

  MyClass(sMyStruct *reftostruct)
  { 
    RefToStruct=reftostruct;
  }
};

int main(void)
{
  sMyStruct *mystruct = new sMyStruct( .. blah .. );
  MyClass *c=new MyClass(mystruct);

  delete c;
  delete mystruct;
}

Na realidade, essa estrutura é criada em outro lugar (fora do meu controle, como parte de um framework, e atualizada dinamicamente) e cada uma se comporta de maneira diferente. MyClass só precisa usar a estrutura correta (escolha do programador), e é por isso que quero manter a referência do objeto na própria classe e não ter que passá-la para cada função/método criado para a classe.

c#
  • 2 respostas
  • 68 Views
Martin Hope
DevQt
Asked: 2025-04-26 12:50:13 +0800 CST

Wrap versus Coluna no Flutter

  • 6

Curiosamente, se eu tiver que fazer uma lista de detalhes com esses widgets:

Row(
  mainAxisAlignment:
      MainAxisAlignment.spaceBetween,
  children: [
    Text('some label'),
    Text('some value'),
  ],
),
Row(
  mainAxisAlignment:
      MainAxisAlignment.spaceBetween,
  children: [
    Text('some label'),
    Text('some value'),
  ],
),

Cada vez que os envolvo dentro de um Wrapou Columnde uma maneira mais simples.

Eu nunca alcançaria o que esperava se usasse Wrap, assim:

Wrap(
  direction: Axis.vertical,
  spacing: 8.0,
  children: [
    Row(
      mainAxisAlignment:
          MainAxisAlignment
              .spaceBetween,
      children: [
        Text('some label'),
        Text('some value'),
      ],
    ),
    Row(
      mainAxisAlignment:
          MainAxisAlignment
              .spaceBetween,
      children: [
        Text('some label'),
        Text('some value'),
      ],
    ),
  ],
),

Saída inesperada:

usando_de_envoltório

O problema é que o conteúdo é colocado no lado esquerdo. Mesmo eu envolvendo o Wrapwidget com oSizedBox(width: double.infinity, child: ...)

Eu só consegui o que queria (ou seja, já que estou usando Row(mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [...],)aqui) com esta abordagem:

Uso de Column()widget em vez de Wrap()widget

Column(
  spacing: 8.0,
  children: [
    Row(
      mainAxisAlignment:
          MainAxisAlignment
              .spaceBetween,
      children: [
        Text('some label'),
        Text('some value'),
      ],
    ),
    Row(
      mainAxisAlignment:
          MainAxisAlignment
              .spaceBetween,
      children: [
        Text('some label'),
        Text('some value'),
      ],
    ),
  ],
),

Resultado esperado:

usando_de_coluna

Observe que o SizedBox(width: double.infinity, child: Column(...))é redundante para este caso, a menos que haja um caso de uso que sugira isso.

Alguém poderia explicar com mais detalhes para entender por que isso está acontecendo? Entender melhor isso pode evitar a implementação de configurações erradas se tendermos a usar esse tipo de resultado de layout.

PS O comportamento permanece o mesmo se executado no DartPad

Aqui está o exemplo mínimo e reproduzível :

import 'package:flutter/material.dart';

void main() => runApp(const MyApp());

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      debugShowCheckedModeBanner: false,
      theme: ThemeData(colorSchemeSeed: Colors.blue),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  final String title;

  const MyHomePage({super.key, required this.title});

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text(widget.title)),
      body: Padding(
        padding: EdgeInsets.symmetric(horizontal: 16.0),
        child: Column(
          spacing: 8.0,
          children: [
            Row(
              mainAxisAlignment: MainAxisAlignment.spaceBetween,
              children: [Text('some label'), Text('some value')],
            ),
            Row(
              mainAxisAlignment: MainAxisAlignment.spaceBetween,
              children: [Text('some label'), Text('some value')],
            ),
          ],
        ),
      ),
    );
  }
}
flutter
  • 3 respostas
  • 65 Views
Martin Hope
user25521292
Asked: 2025-04-26 11:57:21 +0800 CST

Por que usar .SetHandlerLifetime(...) quando já temos PooledConnectionLifetime

  • 8

digamos que temos um trecho de código

builder.Services.AddHttpClient("typicode", c =>
    {
        c.BaseAddress = new Uri("https://xxx");
        c.DefaultRequestHeaders.Add(
            "accept", "application/json");
    })
    .ConfigurePrimaryHttpMessageHandler(() => new SocketsHttpHandler()
    {
        PooledConnectionLifetime = TimeSpan.FromMinutes(5),
    })
    .SetHandlerLifetime(TimeSpan.FromMinutes(10));

Não entendi bem por que ele precisa chamar SetHandlerLifetime(TimeSpan.FromMinutes(10)ou quais são os benefícios de chamá-lo. Sei que SetHandlerLifetimecontrola por quanto tempo uma SocketsHttpHandlerinstância (e seu pool de conexões) é reutilizada no "nível do manipulador" e PooledConnectionLifetime = TimeSpan.FromMinutes(5)é para o "nível da conexão".

mas não é PooledConnectionLifetime = TimeSpan.FromMinutes(5)suficiente usar isso, imagine que eu uso esse HttpClient para fazer várias solicitações para URLs diferentes, como foo1.com, foo2.com...foo10.com. Eu gostaria de um PooledConnectionIdleTimeout de 5 minutos no nível de conexão, então, por exemplo, a conexão para foo1.com expira após 5 minutos, mas foo2.com ainda está ativo e eu quero reutilizá-lo mais tarde, mas SetHandlerLifetime limpará todos os pools após 10 minutos?

c#
  • 2 respostas
  • 68 Views
Martin Hope
oemer ok
Asked: 2025-04-26 11:51:36 +0800 CST

postgresql não pode converter text[] para uuid

  • 6

Eu tenho uma matriz como esta:

["f383224c-aa95-40c9-a4e4-fa41747f49c5","c783234c-aa95-40c9-a4e4-fa41747f49c6"]

E eu quero selecionar com qualquer, mas recebi um erro não é possível converter text[] para uuid

SELECT c.name FROM cars c 

LEFT JOIN location_orders_cars loc ON loc.car_id = c.id 

WHERE loc.user_id = ANY($1::uuid) AND loc.location_orders_id = $2 AND loc.is_back = NULL 

LIMIT 10;

$1 = matriz de UUID acima

$ 2 = 355

o que estou fazendo errado aqui?

sql
  • 2 respostas
  • 53 Views
Martin Hope
Douglas W. Palme
Asked: 2025-04-26 10:20:53 +0800 CST

SQLITE3 não atualiza no Swift apesar de não retornar erros

  • 5

Estou tendo um pequeno problema com uma implementação sqlite3 no swift que não atualiza um campo de saldo.

A tabela é definida da seguinte forma:

class User {
    var id: Int
    var uid: String
    var balance: Double
    var password: String
    var address: String
    
    init(id: Int, uid: String, balance: Double, password: String, address: String) {
        self.id = id
        self.uid = uid
        self.balance = balance
        self.password = password
        self.address = address
    }
}

Ele está sendo criado sem problemas.

Estou escrevendo um registro inicial no momento da criação com o seguinte código:

  func insertUser(id: Int, uid: String, balance: Double, password: String) -> Bool{
        let users = getAllUsers()
        
        // Check user email is exist in User table or not
        for user in users{
            if user.id == id {
                return false
            }
        }
        
        let insertStatementString = "INSERT INTO User (id, uid, balance, password, address) VALUES (?, ?, ?, ?, ?);"
        var insertStatement: OpaquePointer? = nil
        
        if sqlite3_prepare_v2(db, insertStatementString, -1, &insertStatement, nil) == SQLITE_OK {
            sqlite3_bind_int(insertStatement, 1, Int32(id))
            sqlite3_bind_text(insertStatement, 2, (uid as NSString).utf8String, -1, nil)
            sqlite3_bind_double(insertStatement, 3, Double(balance))
            sqlite3_bind_text(insertStatement, 4, (password as NSString).utf8String, -1, nil)
            sqlite3_bind_text(insertStatement, 5, "", -1, nil) // assign empty value to address

            if sqlite3_step(insertStatement) == SQLITE_DONE {
                print("User is created successfully.")
                sqlite3_finalize(insertStatement)
                return true
            } else {
                print("Could not add.")
                return false
            }
        } else {
            print("INSERT statement is failed.")
            return false
        }
    }

Até este ponto, tudo está funcionando conforme o esperado. Todos os campos estão configurados corretamente.

Tento atualizar o saldo com o seguinte código:

/ Update Earnings on User table
    func updateEarnings(id: Int, balance: Double) -> Bool {
        let updateStatementString = "UPDATE User set balance=? where id=?;"
        var updateStatement: OpaquePointer? = nil
        if sqlite3_prepare_v2(db,updateStatementString, -1, &updateStatement, nil) == SQLITE_OK {
            sqlite3_bind_double(updateStatement, 2, Double(balance))

            if sqlite3_step(updateStatement) == SQLITE_DONE {
                print("Earnings Updated Successfully.")
                sqlite3_finalize(updateStatement)
                return true
            } else {
                print("Could not update.")
                return false
            }
        } else {
            print("UPDATE statement is failed.")
            return false
        }
    }

Verifiquei que tanto ele quanto o saldo têm os valores apropriados. Ele retorna verdadeiro, mas o saldo nunca é atualizado com o valor passado.

Qualquer sugestão será apreciada.

  • 1 respostas
  • 43 Views
Martin Hope
teeeeee
Asked: 2025-04-26 09:47:28 +0800 CST

Não é possível fechar o pop-up de cookie no site com o Selenium Webdriver

  • 5

Estou tentando usar o Selenium para clicar no botão Aceitar tudo ou Rejeitar tudo em um pop-up de cookie para o site autotrader.co.uk , mas não consigo fazer o pop-up desaparecer por algum motivo.

Este é o pop-up:

insira a descrição da imagem aqui

e aqui está o html:

<button title="Reject All" aria-label="Reject All" class="message-component message-button no-children focusable sp_choice_type_13" style="opacity: 1; padding: 10px 5px; margin: 10px 5px; border-width: 2px; border-color: rgb(5, 52, 255); border-radius: 5px; border-style: solid; font-size: 14px; font-weight: 400; color: rgb(255, 255, 255); font-family: arial, helvetica, sans-serif; width: calc(35% - 20px); background: rgb(5, 52, 255);">Reject All</button>

insira a descrição da imagem aqui

O código que tentei é o seguinte:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time

path_to_driver = r"C:\path_to_project\chromedriver.exe"
service = Service(executable_path=path_to_driver)

driver = webdriver.Chrome(service=service)
driver.get("https://www.autotrader.co.uk")
time.sleep(5)
WebDriverWait(driver, 15).until(EC.element_to_be_clickable((By.CLASS_NAME, 'message-component message-button no-children focusable sp_choice_type_13'))).click()

time.sleep(10)
driver.quit()

Alguém pode ajudar aqui?

python
  • 2 respostas
  • 97 Views
Martin Hope
Vraj Shah
Asked: 2025-04-26 06:34:12 +0800 CST

Implementar valuable::Valuable em serde_json::Value

  • 5

Como posso implementar o valuable::Valuable no meu tipo de wrapper serde_json::Value.

Todos os outros campos estão funcionando, exceto o array e o objeto.

Tentei envolvê-lo com meu tipo personalizado, mas estava dando erro de compilação dizendo que o valor foi descartado.

Também tentei adicionar tempos de vida aos meus tipos personalizados, mas isso também não funcionou.

Aqui está o que fiz até agora, esperando que haja uma solução ou mesmo uma alternativa.

use serde_json::{Map, Value as Json};

use valuable::{Mappable, Valuable, Value, Visit};

#[derive(Clone)]
pub struct JsonValueable(pub Json);

#[derive(Clone)]
pub struct JsonValueableMap(pub Map<String, Json>);

impl Valuable for JsonValueable {
    fn as_value(&self) -> Value<'_> {
        match self.0 {
            Json::Array(ref array) => array
                .iter()
                .map(|v| JsonValueable(v.clone()))
                .collect::<Vec<JsonValueable>>()
                .as_value(),
            Json::Bool(ref value) => value.as_value(),
            Json::Number(ref num) => {
                if num.is_f64() {
                    Value::F64(num.as_f64().unwrap())
                } else if num.is_i64() {
                    Value::I64(num.as_i64().unwrap())
                } else {
                    unreachable!()
                }
            }
            Json::Null => Value::Unit,
            Json::String(ref s) => s.as_value(),
            Json::Object(ref object) => JsonValueableMap(object.clone()).as_value(),
        }
    }

    fn visit(&self, visit: &mut dyn Visit) {
        match self.0 {
            Json::Array(ref array) => array
                .iter()
                .map(|v| JsonValueable(v.clone()))
                .for_each(|v| v.visit(visit)),
            Json::Bool(ref value) => value.visit(visit),
            Json::Number(ref num) => {
                if num.is_f64() {
                    num.as_f64().unwrap().visit(visit)
                } else if num.is_i64() {
                    num.as_i64().unwrap().visit(visit)
                } else {
                    unreachable!()
                }
            }
            Json::Null => Value::Unit.visit(visit),
            Json::String(ref s) => s.visit(visit),
            Json::Object(ref object) => JsonValueableMap(object.clone()).visit(visit),
        }
    }
}

impl Valuable for JsonValueableMap {
    fn as_value(&self) -> Value<'_> {
        Value::Mappable(self)
    }

    fn visit(&self, visit: &mut dyn Visit) {
        for (k, v) in self.0.iter() {
            visit.visit_entry(k.as_value(), JsonValueable(v.clone()).as_value());
        }
    }
}

impl Mappable for JsonValueableMap {
    fn size_hint(&self) -> (usize, Option<usize>) {
        let len = self.0.len();
        (len, Some(len))
    }
}

Este é o erro que encontro

error[E0515]: cannot return value referencing temporary value
  --> bins/api/src/utils/json_valuable.rs:14:39
   |
14 |                Json::Array(ref array) => array
   |   _______________________________________^
   |  |_______________________________________|
15 | ||                 .iter()
16 | ||                 .map(|v| JsonValueable(v.clone()))
17 | ||                 .collect::<Vec<JsonValueable>>()
   | ||________________________________________________- temporary value created here
18 | |                  .as_value(),
   | |____________________________^ returns a value referencing data owned by the current function

error[E0515]: cannot return value referencing temporary value
  --> bins/api/src/utils/json_valuable.rs:31:41
   |
31 |             Json::Object(ref object) => JsonValueableMap(object.clone()).as_value(),
   |                                         --------------------------------^^^^^^^^^^^
   |                                         |
   |                                         returns a value referencing data owned by the current function
   |                                         temporary value created here

For more information about this error, try `rustc --explain E0515`.
error: could not compile `api` (bin "api") due to 2 previous errors
rust
  • 1 respostas
  • 93 Views
Martin Hope
Kpmurphy91
Asked: 2025-04-26 06:30:48 +0800 CST

No SwiftUI, qual é a melhor maneira de ancorar uma visualização ao centro do contêiner e, ao mesmo tempo, ancorar uma visualização adicional à sua borda?

  • 6

Sou iniciante no SwiftUI e estou tentando entender como posso manter uma visualização centralizada horizontalmente na tela do dispositivo, ao mesmo tempo em que ancorar uma visualização adicional na borda posterior (sem descentralizar a visualização original).

Tenho um protótipo que funciona, mas é um pouco feio e depende de "onGeometryChange" para rastrear o tamanho da visualização centralizada a fim de deslocar a visualização adjacente na quantidade correta. O motivo pelo qual isso funciona é que usar offset não altera a geometria da ZStack que a contém, que considera que a visualização adjacente ocupa a mesma posição centralizada que a primeira.

Embora minha abordagem pareça funcionar, ela parece um pouco desastrosa, pois depende de vários ciclos de layout (um para criar o layout do ZStack e da visualização centralizada, depois ler a alteração da geometria e, por fim, atualizar a posição da visualização adjacente). Além disso, as dimensões do contêiner ZStack não incluem o deslocamento da visualização adjacente.

struct ContentView: View {
    
    @State private var centeredLabelWidth: CGFloat = .zero
    @State private var offsetLabelWidth: CGFloat = .zero
    
    var body: some View {
        ZStack {
            Text("Centered Label")
            .border(Color.blue)
            .padding(1)
            .onGeometryChange(for: CGFloat.self) { $0.size.width } action: {
                centeredLabelWidth = $0
            }
            
            Text("Adjacent Label")
            .border(Color.red)
            .padding(1)
            .onGeometryChange(for: CGFloat.self) { $0.size.width } action: {
                offsetLabelWidth = $0
            }
            .offset(x: centeredLabelWidth / 2 + offsetLabelWidth / 2)
        }
    }
}

Captura de tela do playground

Agradeço muito qualquer contribuição da comunidade!

swiftui
  • 2 respostas
  • 63 Views
Martin Hope
devmauv
Asked: 2025-04-26 05:09:10 +0800 CST

Gerar assinatura PKCS7 com CryptSignMessage / e-token

  • 6

Estou gerando um p7s com CryptSignMessage e etoken (safenet), mas após inseri-lo no PDF, o Adobe indica que a assinatura não pode ser validada porque o documento foi modificado ou corrompido.

Esta é minha função C:

int GeneratePKCS7Signature(const BYTE * pbData, DWORD cbData,
  const CERTIFICATES_INFO * certInfo, BYTE ** ppbPkcs7, DWORD * pcbPkcs7) {
  if (!pbData || cbData == 0 || !certInfo || !certInfo -> signerCert || !ppbPkcs7 || !pcbPkcs7) {
    printf("Invalid parameters.\n");
    return 1;
  }
  printf("Start GeneratePKCS7Signature\n");
  // Verify that the signing certificate has its private key associated (using SafeNet etoken)
  NCRYPT_KEY_HANDLE hKey = 0;
  BOOL freeKey = FALSE;
  if (!CryptAcquireCertificatePrivateKey(certInfo -> signerCert,
      CRYPT_ACQUIRE_ALLOW_NCRYPT_KEY_FLAG,
      NULL,
      (HCRYPTPROV_OR_NCRYPT_KEY_HANDLE * ) & hKey,
      NULL, &
      freeKey)) {
    printf("Error searching for the private key of the signing certificate: %lu\n", GetLastError());
    return 1;
  }

  if (freeKey && hKey)
    NCryptFreeObject(hKey);

  // Build the array of certificates to be included in thePKCS#7:
  // The signing certificate is included, then the intermediate certificates and finally the root certificates
  size_t totalCertCount = 1 + certInfo -> numIntermediates + certInfo -> numRoots;
  PCCERT_CONTEXT * rgpCerts = (PCCERT_CONTEXT * ) malloc(totalCertCount * sizeof(PCCERT_CONTEXT));
  if (!rgpCerts) {
    printf("Error allocating memory for the certificate array.\n");
    return 1;
  }
  size_t idx = 0;
  rgpCerts[idx++] = certInfo -> signerCert;
  for (size_t i = 0; i < certInfo -> numIntermediates; i++) {
    rgpCerts[idx++] = certInfo -> intermediates[i];
  }
  for (size_t i = 0; i < certInfo -> numRoots; i++) {
    rgpCerts[idx++] = certInfo -> roots[i];
  }

  // Configure the structure CRYPT_SIGN_MESSAGE_PARA.

  CRYPT_SIGN_MESSAGE_PARA signPara;
  memset( & signPara, 0, sizeof(signPara));
  signPara.cbSize = sizeof(CRYPT_SIGN_MESSAGE_PARA);
  signPara.dwMsgEncodingType = PKCS_7_ASN_ENCODING | X509_ASN_ENCODING;
  signPara.pSigningCert = certInfo -> signerCert;
  signPara.HashAlgorithm.pszObjId = OID_RSA_SHA256; // SHA256
  signPara.cMsgCert = (DWORD) totalCertCount;
  signPara.rgpMsgCert = rgpCerts;
  signPara.cAuthAttr = 0;
  signPara.dwFlags = 0;
  signPara.dwInnerContentType = 0;

  // Prepare the parameters for the function CryptSignMessage.
  const BYTE * rgpbToBeSigned[1] = {
    pbData
  };
  DWORD rgcbToBeSigned[1] = {
    cbData
  };

  // First call to get the required size of the PKCS#7.
  DWORD cbPkcs7 = 0;
  if (!CryptSignMessage( & signPara,
      TRUE, // Sign detached
      1,
      rgpbToBeSigned,
      rgcbToBeSigned,
      NULL, &
      cbPkcs7)) {
    printf("Error calculating the size of the PKCS#7: 0x%x\n", GetLastError());
    free(rgpCerts);
    return 1;
  }

  BYTE * pbPkcs7 = (BYTE * ) HeapAlloc(GetProcessHeap(), 0, cbPkcs7);
  if (!pbPkcs7) {
    printf("Error allocating memory for the PKCS#7.\n");
    free(rgpCerts);
    return 1;
  }

  // Second call to generate the PKCS#7.
  if (!CryptSignMessage( & signPara,
      TRUE, // Sign detached
      1,
      rgpbToBeSigned,
      rgcbToBeSigned,
      pbPkcs7, &
      cbPkcs7)) {
    printf("Error generating the PKCS#7: 0x%x\n", GetLastError());
    HeapFree(GetProcessHeap(), 0, pbPkcs7);
    free(rgpCerts);
    return 1;
  }

  * ppbPkcs7 = pbPkcs7;
  * pcbPkcs7 = cbPkcs7;

  free(rgpCerts);
  return 0;
}

o p7s gerado é: firma.p7s teste pdf assinado: pdf

Testei vários PDFs diferentes. Também verifiquei os hashes SHA256 antes e depois da assinatura. Analisei a estrutura do PDF com diferentes ferramentas, como o QPDF. Portanto, acredito que o problema esteja no PKCS7, em algum atributo ou na própria assinatura que está impedindo a Adobe de validá-la. Também verifiquei com o decodificador ANS.1 e, embora tenha corrigido algumas coisas, o erro continua o mesmo.

c
  • 1 respostas
  • 50 Views
Martin Hope
elbannhawy
Asked: 2025-04-26 04:50:41 +0800 CST

Como exibir 3 elementos por 3 de um array em HTML usando o método array.sclice() em javascript

  • 5

Encontrei uma maneira de exibir uma parte de um array usando arrayName.slice(start, end), criei uma função para alimentar o início e o fim do método slice para que eu possa usá-lo com o botão onClick para clicar nos próximos 3 elementos a serem exibidos em HTML.

meu problema é que a função de incremento não começa com zero (0), ela começa com 3-6, e quando eu pressiono próximo ela começa de 6 a 9. Está funcionando corretamente, mas não começa do zero

    const array = ["a1","a2","a3","a4","a5","a6","a7","a8","a9","a10","a11","a12","a13","a14","a15"]

let next = {
        start: 0,
        end: 0,
        incrementby: 3,
        inc() {
          this.start = this.start = 0 ? 0 : this.start + this.incrementby;
          this.end = this.start + this.incrementby;
          console.log(this.start, this.end);
          displayHadith(this.start,this.end)
        },
      };
      
 function displayHadith(start,end) {
        var container = document.querySelector(".container");
        container.innerHTML = ""
        let some = array.slice(start, end);
         for (let element of some) {
          container.innerHTML +=`
          <div class="sharh" >${element}</div>
          `
         }
        }
<button onclick="next.inc()">clickNext</button>
<div class="container"></div>

javascript
  • 1 respostas
  • 39 Views
Prev
Próximo

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Reformatar números, inserindo separadores em posições fixas

    • 6 respostas
  • Marko Smith

    Por que os conceitos do C++20 causam erros de restrição cíclica, enquanto o SFINAE antigo não?

    • 2 respostas
  • Marko Smith

    Problema com extensão desinstalada automaticamente do VScode (tema Material)

    • 2 respostas
  • Marko Smith

    Vue 3: Erro na criação "Identificador esperado, mas encontrado 'import'" [duplicado]

    • 1 respostas
  • Marko Smith

    Qual é o propósito de `enum class` com um tipo subjacente especificado, mas sem enumeradores?

    • 1 respostas
  • Marko Smith

    Como faço para corrigir um erro MODULE_NOT_FOUND para um módulo que não importei manualmente?

    • 6 respostas
  • Marko Smith

    `(expression, lvalue) = rvalue` é uma atribuição válida em C ou C++? Por que alguns compiladores aceitam/rejeitam isso?

    • 3 respostas
  • Marko Smith

    Um programa vazio que não faz nada em C++ precisa de um heap de 204 KB, mas não em C

    • 1 respostas
  • Marko Smith

    PowerBI atualmente quebrado com BigQuery: problema de driver Simba com atualização do Windows

    • 2 respostas
  • Marko Smith

    AdMob: MobileAds.initialize() - "java.lang.Integer não pode ser convertido em java.lang.String" para alguns dispositivos

    • 1 respostas
  • Martin Hope
    Fantastic Mr Fox Somente o tipo copiável não é aceito na implementação std::vector do MSVC 2025-04-23 06:40:49 +0800 CST
  • Martin Hope
    Howard Hinnant Encontre o próximo dia da semana usando o cronógrafo 2025-04-21 08:30:25 +0800 CST
  • Martin Hope
    Fedor O inicializador de membro do construtor pode incluir a inicialização de outro membro? 2025-04-15 01:01:44 +0800 CST
  • Martin Hope
    Petr Filipský Por que os conceitos do C++20 causam erros de restrição cíclica, enquanto o SFINAE antigo não? 2025-03-23 21:39:40 +0800 CST
  • Martin Hope
    Catskul O C++20 mudou para permitir a conversão de `type(&)[N]` de matriz de limites conhecidos para `type(&)[]` de matriz de limites desconhecidos? 2025-03-04 06:57:53 +0800 CST
  • Martin Hope
    Stefan Pochmann Como/por que {2,3,10} e {x,3,10} com x=2 são ordenados de forma diferente? 2025-01-13 23:24:07 +0800 CST
  • Martin Hope
    Chad Feller O ponto e vírgula agora é opcional em condicionais bash com [[ .. ]] na versão 5.2? 2024-10-21 05:50:33 +0800 CST
  • Martin Hope
    Wrench Por que um traço duplo (--) faz com que esta cláusula MariaDB seja avaliada como verdadeira? 2024-05-05 13:37:20 +0800 CST
  • Martin Hope
    Waket Zheng Por que `dict(id=1, **{'id': 2})` às vezes gera `KeyError: 'id'` em vez de um TypeError? 2024-05-04 14:19:19 +0800 CST
  • Martin Hope
    user924 AdMob: MobileAds.initialize() - "java.lang.Integer não pode ser convertido em java.lang.String" para alguns dispositivos 2024-03-20 03:12:31 +0800 CST

Hot tag

python javascript c++ c# java typescript sql reactjs html

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve