小编Asl*_*lam的帖子

console.log 未打印到 Visual Studio Code 中的调试控制台

我已经创建launch.json了与完全相同的文件,用于在 VS Code 上调试我的电子应用程序。但是console.log()没有向调试控制台打印任何内容。

如果我添加 "console": "integratedTerminal"launch.json内置终端上的日志显示。我希望日志显示在调试控制台上。我该如何解决?

javascript debugging console electron visual-studio-code

10
推荐指数
1
解决办法
4584
查看次数

使用用于拆分的相同分隔符连接字符串

我有一个字符串需要用正则表达式拆分以应用一些修改。

例如:

const str = "Hello+Beautiful#World";
const splited = str.split(/[\+#]/)

// ["Hello", "Beautiful", "World"]
Run Code Online (Sandbox Code Playgroud)

现在字符串已被+或分割#。现在说在对数组中的项目进行一些修改后,我必须使用用于拆分的相同分隔符加入数组,因此字符+#必须与以前的位置相同。

例如:如果我应用了一些修改字符串并加入。那么应该是。

Hello001+Beutiful002#World003
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

javascript regex arrays string split

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

如何使用 qt_add_qml_module 在 CMake 中注册 QObject 类?

我有一个在 QML 中使用的QObject派生类Expense,如下所示。

// main.qml
Expense {
  id: expenseManager
  onExpenseCreated: {
      // Do something
  }
}
Run Code Online (Sandbox Code Playgroud)

费用类没有 UI 组件,它有一些用于 API 通信的基本信号和插槽。

// expense.h

#ifndef EXPENSE_H
#define EXPENSE_H
#include <QObject>
#include <QString>

#include "service.h"

class Expense : public QObject
{
    Q_OBJECT

private:
    Service service;
    void networkError();
    bool buttonLock = false;

public:
    explicit Expense(QObject *parent = nullptr);


public slots:
    void createInvoice(QString item, float amount);

signals:
    void expenseCreated();

};

#endif // EXPENSE_H
Run Code Online (Sandbox Code Playgroud)

我曾用于在 QML 中qmlRegisterType()注册Expense类型。下面是我的样子 …

c++ qt cmake qml

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

QAbstractListModel 在 Qt::DisplayRole 上返回意外结果

我创建了一个具有两个角色的非常小的 QAbstractListModel,display并且test

InvoiceTabModel::InvoiceTabModel(QObject *parent): QAbstractListModel(parent)
{

}

QVariant InvoiceTabModel::data(const QModelIndex &index, int role) const
{
    Q_UNUSED(index)
    if(role == 123)
        return QVariant("testRole");
    return QVariant("displayRole");
}

int InvoiceTabModel::rowCount(const QModelIndex &parent) const
{
    Q_UNUSED(parent)
    return 3;
}

QHash<int, QByteArray> InvoiceTabModel::roleNames() const
{
    return { {Qt::DisplayRole, "display"}, {123, "test"} };
}
Run Code Online (Sandbox Code Playgroud)

我将此模型连接到中继器

Repeater{
    id: invoiceTab
    anchors.fill: parent
    model: invoice.tabmodel
    Button{
        width: 100
        height: parent.height
        text: test
        //text: display
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是当我使用displayrole 时,文本显示为2,但是当我test在 qml 中使用时,字符串显示正确

使用 …

c++ qt qml

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

标签 统计

c++ ×2

javascript ×2

qml ×2

qt ×2

arrays ×1

cmake ×1

console ×1

debugging ×1

electron ×1

regex ×1

split ×1

string ×1

visual-studio-code ×1