小编Boa*_*rdy的帖子

创建自定义反应包库

我第一次尝试创建一个库包,但遇到了一个问题,虽然一切都编译得很好,但在加载页面时它说无法在库中找到我的组件的模块。

在我的图书馆项目中,我有以下目录结构

目录结构

在我的 SayHello.jsx 文件中,我有以下内容:

import * as React from 'react';

const SayHello = (props) => {
    return (
        <h1>Hello ${props.name}</h1>
    )
}

export {SayHello}
Run Code Online (Sandbox Code Playgroud)

在我的 babel.config.js 中,我有以下内容:

{
    "presets": [
     [
      "@babel/env",
       {
        "targets": {
        "edge": "17",
        "firefox": "60",
        "chrome": "67",
        "safari": "11.1"
         },
      "useBuiltIns": "usage",
      "corejs": "3.6.5"
       }
   ],
      "@babel/preset-react"
   ]
   }
Run Code Online (Sandbox Code Playgroud)

在我使用这个库的主应用程序中,我已将项目添加到 NPM 中(从 GitHub 托管它,而不是 NPM 包管理器作为其私有库)

我将该组件导入到我的主应用程序中并按如下方式使用它:

import SayHello from 'devso-react-library'
...

<SayHello name={'chris'} />
Run Code Online (Sandbox Code Playgroud)

在 lib 目录中的 index.js 中,我有以下内容:

import SayHello from "./components/SayHello";

export …
Run Code Online (Sandbox Code Playgroud)

package reactjs next.js

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

移动进度条不显示c#wpf中的百分比

我目前正在使用WPF开发一个C#应用程序.这很难解释,但我会试一试.

我想要做的是有一个进度条.进度条不会显示完成进度的百分比,而是应该继续在循环中从左到右移动条,就像在计算传输时需要多长时间时窗口所做的那样.大型文件在实际复制之前.

我该怎么做而不是显示正常的进度条.

感谢您对此的帮助.

c# wpf progress-bar

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

使用C#CryptoStream的Java equilavent加密和解密字符串

我正在寻找用Java开发移动平台操作系统的应用程序.

我已经在C#WPF中为Windows环境开发了一个应用程序.我使用cryptostream以使用以下代码加密和解密字符串.下面显示的代码只是加密

public string encrypt(string encryptionString)
    {
        byte[] clearTextBytes = Encoding.UTF8.GetBytes(encryptionString);

        SymmetricAlgorithm rijn = SymmetricAlgorithm.Create();

        MemoryStream ms = new MemoryStream();
        byte[] rgbIV = Encoding.ASCII.GetBytes("ryojvlzmdalyglrj");
        byte[] key = Encoding.ASCII.GetBytes("hcxilkqbbhczfeultgbskdmaunivmfuo");
        CryptoStream cs = new CryptoStream(ms, rijn.CreateEncryptor(key, rgbIV), CryptoStreamMode.Write);

        cs.Write(clearTextBytes, 0, clearTextBytes.Length);

        cs.Close();

        return Convert.ToBase64String(ms.ToArray());
    }
Run Code Online (Sandbox Code Playgroud)

加密的字符串存储在在线数据库中.我需要做的是让java应用程序能够从数据库中读取字符串并使用C#应用程序中的相同加密密钥解密字符串.

谢谢你的帮助.

c# java encryption cryptostream

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

设置AutoCompleteBox C#WPF的最大字符长度

我目前正在开发一个C#WPF应用程序.我正在使用AutoCompleteBox控件,我想限制用户只输入有限数量的字符,即只能在自动完成框中输入10个字符.

我知道在普通的文本框中会使用MaxLength属性,但这似乎不适用于AutoCompleteBox.

c# wpf autocompletebox

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

在启动时运行程序

我目前正在研究ac#wpf项目.我已经向程序添加了代码,以便它创建一个注册表项,以便在用户登录时自动启动程序,并且还编写了程序,以便最小化到系统托盘.

当用户自己手动启动程序时,我显然希望程序像正常一样出现在屏幕中间,但是当程序在启动时自动启动时我希望它最小化加载.

有没有办法确定程序是由用户启动还是在启动时启动,以便我可以使其加载最小化而不是在启动时出现在屏幕上.

c# wpf startup

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

以编程方式屏蔽/取消屏蔽密码字段?

我目前正在开发android项目,我希望允许用户通过选中一个复选框来隐藏或在屏幕上显示他们的密码.

我如何用*字符替换字符串中的每个字符,或者是否有特定的方法来执行此操作.

例如,如果密码是my_password我希望它被替换***********.

string android

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

对ArrayAdapter或ArrayList的内容进行排序

我正在研究android项目,并正在使用从SQLite数据库中检索数据的ListView.

我正在使用ArrayList创建数据集,然后将此ArrayList添加到ArrayAdapter中.

当从数据库中检索数据时,我告诉SQLite进行排序,以便在将其添加到ListView时按字母顺序排列.在某些时候,信息将动态添加到ListView,而不需要再次从数据库中重新获取所有内容.但是,我想按字母顺序保留所有内容.

我该怎么做,我是否对DataSet进行排序,然后调用notifyDataSet Changes或直接在ArrayAdapter上进行排序.我已经考虑在ArrayAdapter上执行排序,但是这需要一个使用Comparator的参数但不确定它是什么,并且找不到任何可能对我想要实现的任何帮助的工作示例.

下面是填充数组并设置列表适配器的代码

ArrayList<Spanned> passwords = managePasswordList.getPasswordList();
        if (passwords != null && passwords.size() > 0)
        {
            passwordArrayAdapter = new ArrayAdapter<Spanned>(getActivity().getApplicationContext(), 
                    android.R.layout.simple_list_item_activated_1, passwords);
            setListAdapter(passwordArrayAdapter);
            myListView.setTextFilterEnabled(true);
            txtNoRecords.setVisibility(View.GONE);
        }
        else
        {
            txtNoRecords.setVisibility(View.VISIBLE);
        }
Run Code Online (Sandbox Code Playgroud)

然后,我将数据添加到数据集并使用以下内容刷新列表视图

String company = Encryption.decrypt(passwords.get(i).company);
                    String username = Encryption.decrypt(passwords.get(i).username);
                    details = Html.fromHtml(company + "<br />" + "<small><font color=\"#767676\">" + username + "</b></small>");    
Run Code Online (Sandbox Code Playgroud)

passwords.add(细节);
passwordArrayAdapter.notifyDataSetChanged();

感谢您的任何帮助,您可以提供.

更新1 我尝试过尼克布拉德伯里提出的建议,但我对比较器有问题.我有以下代码,但我不知道从哪里开始.

SQLiteDatabase myDb = null;
        Cursor cursor = null;
        ArrayList<Spanned> passwords = new ArrayList<Spanned>();
        try
        {
            myDb = context.openOrCreateDatabase("PasswordManager", Context.MODE_PRIVATE, null); …
Run Code Online (Sandbox Code Playgroud)

android arraylist android-arrayadapter

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

使用Google Chart API和JSON for DataTable创建折线图

java我正在尝试使用Google Chart API创建折线图.我试图通过AJAX帖子使用JSON为数据表设置数据.

我有一个为饼图工作的版本,但我无法找到如何为折线图做.

以下是我使用ajax帖子创建图表的方法.

function drawLineGraph()
             {
                 $.post("loadGraph.php",
                    {
                        type: "line"
                    },
                    function (result)
                    {
                        var data = new google.visualization.DataTable(result);
                        var options = {
                            title: "Line Graph Test"
                        };

                        var chart = new google.visualization.LineChart(document.getElementById("lineChart"));
                        chart.draw(data, options);
                    }, "json"
                );
             }
Run Code Online (Sandbox Code Playgroud)

下面是loadGraph.php的代码

print json_encode(test());

    function test()
    {
        $array = array();
        if ($_POST['type'] == "line")
        {
            $array['cols'][] = array('type' => 'string');
            $array['cols'][] = array('type' => 'number');

            $temp = array();
            $array['row'][] = array('v' => (string) "20-01-13");
            $array['row'][] = array('v' => (int) 35); …
Run Code Online (Sandbox Code Playgroud)

javascript charts json google-visualization

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

使用包含括号“(”的正则表达式从字符串中提取子字符串

我试图弄清楚如何从字符串中提取子字符串,但该字符串包含一个括号,然后 Java 抱怨它没有包含在内,如果我尝试转义它,则会抱怨它不是有效的转义字符。

\n\n

我有以下字符串:

\n\n
[Monitor Status](/monitors#2972550?)] \xc2\xb7 [[Edit Monitor](/monitors#2972550/edit)] \xc2\xb7 [[Related Logs](/logs?query=)]\n%%%\n
Run Code Online (Sandbox Code Playgroud)\n\n

我正在尝试提取 /monitors# 之后的数字。该数字位于两个地方,并且在两个地方始终相同,因此我只是尝试提取第一个数字。

\n\n

以下是我目前拥有的:

\n\n
Pattern pattern = Pattern.compile("[Monitor Status]/monitors#(\\\\d+)");                   \nMatcher matcher = pattern.matcher(monitorDetails);\nif (matcher.find())\n{\n     String monitor_id = matcher.group(1);\n     monitorDetailsContainer.setVisibility(View.VISIBLE);\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

通过上面的内容,我没有(] 和 /monitors 之间的内容,但是当我执行 Android Studio 时,会说unclosed group. 如果我尝试转义斜杠,\\(则会显示非法转义字符。

\n\n

我期待得到的是2972550.

\n

regex android

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

NextJS 和 NextAuth 会话用户对象由于 [...nextauth.ts] 被触发重新编译而丢失

我正在学习 NextJS 和 NextAuth,并使用我自己的登录页面实现了凭据登录,并且它正在会话对象包含我的用户模型的地方工作(目前包含包括密码在内的所有内容,但显然它不会保持这样)。

我可以刷新页面并维持会话,但是如果我离开一两分钟然后刷新会话中的用户对象将成为默认值,即使我的会话应该到下个月才会过期。

下面是我的 [...nextauth.tsx] 文件

import NextAuth, {NextAuthOptions} from 'next-auth'
import Providers from 'next-auth/providers'
import { PrismaClient } from '@prisma/client'
import {session} from "next-auth/client";

let userAccount = null;

const prisma = new PrismaClient();

const providers : NextAuthOptions = {
    site: process.env.NEXTAUTH_URL,
    cookie: {
        secure: process.env.NODE_ENV && process.env.NODE_ENV === 'production',
    },
    redirect: false,
    providers: [
        Providers.Credentials({
            id: 'credentials',
            name: "Login",
            async authorize(credentials : any) {
                const user = await prisma.users.findFirst({
                    where: {
                        email: credentials.email,
                        password: credentials.password
                    }
                }); …
Run Code Online (Sandbox Code Playgroud)

session credentials phpstorm next.js next-auth

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