小编Abh*_*bhi的帖子

类型 '{ 类:字符串;}' 不可分配给类型 'DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>'

我正在使用带有 volar 扩展的 vue、ts、vite。

在 Vs 代码中,我收到错误 Type '{ class: string; }' is not assignable to type 'DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>'. Property 'class' does not exist on type 'DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>'. Did you mean 'className'?ts(2322)

当我<div class=""></div>class

当我将鼠标悬停在div我看到的 (property) div: React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>

我不知道是什么让 VS Code 假设我正在使用 React。文件类型是.vue

我禁用了 eslint,但仍然收到错误。当我运行应用程序时它可以工作,但在 vscode 中看到该错误很烦人。

我应该添加一些d.ts文件吗?

javascript typescript vue.js visual-studio-code

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

将 useState 与全局装饰器一起使用会引发错误 Storybook 预览挂钩只能在装饰器和故事函数内部调用

我在 monorepo 中使用故事书。在我的根文件夹中preview.js有这个:

export const decorators = [
  (Story) => {
    const theme = createTheme("violet", "gray");
    const GlobalStyles = createGlobalStyle`
      *{padding: 0; margin: 0; box-sizing: border-box;}
      ul{ list-style: none}
    `;
    return (
      <ThemeProvider theme={theme}>
        <GlobalStyles />
        <Story />
      </ThemeProvider>
    );
  },
];
Run Code Online (Sandbox Code Playgroud)

useState当我在组件中 使用装饰器时,我得到,Storybook preview hooks can only be called inside decorators and story functions.

故事:

export const Default = () => {
    let items = [
      { id: "1", name: "one" },
     ...
    ];
   
    const …
Run Code Online (Sandbox Code Playgroud)

reactjs storybook

7
推荐指数
1
解决办法
2207
查看次数

如果选中具有相同ID的另一个复选框,如何禁用复选框

我有一个表,其中一个列中有一个复选框.选中复选框后,我将行推入数组.

我试图在下面的..real world中更好地解释这个

该表可以包含重复id的行(row(flat_id)的列不同).我上面提到的重复ID是user_map_id.

当我检查(单击复选框)一行时,我希望user_map_id禁用其他具有相同行.

因此,当检查一行时,我将user_map_ids 存储在一个数组中.然后我这样做:

ng-disabled="selectedUserMapIdArray.indexOf(flat.user_map_id) >= 0

即如果user_map_id数组中存在选定的user_map_ids ,则禁用该行,但这会禁用我检查的那个,如果我愿意,我也无法取消选中它.

所以我也将数据推入flat_id数组并执行此操作:

ng-disabled="selectedUserMapIdArray.indexOf(flat.user_map_id) >= 0 && selectedFlatNumArray.indexOf(flat.flat_id) < 0 "

即禁用行,如果该行的user_map_id是存在于selectedUserMapIdArray(其存储user_map_id)阵列和在不存在selectedFlatNumArray(其存储flat_id)

但现在当我检查有特定的行flat_id是常见的有重复的一个user_map_id,flat_id,然后再在该组中二选一,一个与普通flat_id没有得到禁用,因为flat_id我在上面签是存在于selectedFlatNumArray(其中存储flat_id).

根据现实世界进行解释

这是一个截图: 图片

表格中的行是平面所有者和占用者的列表(两者都有user_map_id).单位业主可以有多个单位(因此user_map_id表中有重复的单位).公寓业主可以有多个单位(不同flat_ids).

但是公寓老板可以有一个占用者(同样flat_id不同user_map_id).乘客可以居住在公寓业主的许多公寓之一(相同的flat_id不同user_map_id).

我想能够检查任何一个公寓老板(其他人被禁用)和一个占用者(如果我想). …

javascript angularjs

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

为什么 ref 值增加两倍

我这里有这个代码:

export default function App() {
  const [count, setCount] = useState(0);
  const [step, setStep] = useState(0);
  const reff = useRef(0);

  useEffect(() => {
    
      const id = setInterval(() => {

      setCount((c) => {
        console.log({ step }, "reff.current before incr ", reff.current);
        reff.current = reff.current + step;
        console.log("ref.curret after incr ", reff.current);
        return c + step;
      });

    }, 6000);

    return () => clearInterval(id);
  }, [step]);


  return (
    <>
      <h1>Count:{count}</h1>
      <h1>Step: {step}</h1>
      <input
        type="button"
        onClick={(e) => setStep((prevStep) =>(prevStep + 1))}
        value="+ step"
      /> …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs

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

重定向用户以打开互联网设置

我正在创建的应用程序需要互联网连接.我能够检查互联网是否在Android 4.2.2中以编程方式启用互联网.但是我无法在棒棒糖中自动开启.我搜索了一下,发现手机需要扎根才能使用setMobileDataEnabledgetMobileDataEnabled.

如何将用户重定向到互联网设置,以便他/她可以打开它.打开后,如何自动将用户重定向回我的应用程序.

我根据SO帖子尝试了这个:

                Intent intent = new Intent(Intent.ACTION_MAIN);
            intent.setClassName(MainActivity.this,
                    "com.android.phone.NetworkSetting");
            startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

但是我得到了这个错误 android.content.ActivityNotFoundException: Unable to find explicit activity class {com.prematixsofs.taxiapp/com.android.phone.NetworkSetting}; have you declared this activity in your AndroidManifest.xml?

android android-intent android-5.0-lollipop

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

检查TimePicker时间是否小于当前时间

我正在尝试在检查设置时间是否超过当前时间之后从TimePicker对话框中TextView设置时间.我花时间从TimePicker字符串中选择s并以(hh:mm)格式解析.我使用SimpleDateFormat.parse("hh:mm")但它比较了1970年的时间和今天的日期和时间.

所以我尝试SimpleDateFormat("dd-mm-yy hh:mm:ss.SSS").parse(s);了日期,月份和年份,但它给了我ParseException.我用它before()来检查所选时间是否在当前时间之前.但是我应该首先解析与日期和时间一起设置的时间来使用该方法.如何检查设置的时间TimePicker是否小于当前时间.

这是我试过的:

public Dialog onCreateDialog(Bundle savedInstanceState) {
        // Use the current time as the default values for the picker
        final Calendar c = Calendar.getInstance();
        int hour = c.get(Calendar.HOUR_OF_DAY);
        int minute = c.get(Calendar.MINUTE);

        // Create a new instance of TimePickerDialog and return it
        return new TimePickerDialog(getActivity(), this, hour, minute,
                DateFormat.is24HourFormat(getActivity()));
    }

    public void onTimeSet(TimePicker view, int hourOfDay, int minute) …
Run Code Online (Sandbox Code Playgroud)

android calendar date android-timepicker

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

如何连接具有相同 id 的对象值

我有一个数组:

let ar = [
    {
         uid:1, 
         flat_no: 1
    },
    {
         uid:2,
         flat_no: 2
    },
    {
         uid:1,
         flat_no:3
    }
];
Run Code Online (Sandbox Code Playgroud)

如果uid相同,那么我想删除重复项uid并将其连接起来flat_no。输出数组应该是这样的:

[
     {
         uid:1, 
         flat_no: [1,3]
     },
     {
         uid:2,
         flat_no: 2
     }
];
Run Code Online (Sandbox Code Playgroud)

javascript arrays

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

按钮onclick不会调用javascript函数

我在点击按钮时调用一个函数.但是这个功能没有被调用.我不知道我做错了什么.请帮忙.

<!DOCTYPE html>
<html>
<head>
  <title></title>
  <script type="text/javascript">
    function clear() {
      document.getElementById('inp').value = "";
    }
  </script>
</head>

<body>
  <input type="text" id="inp" name="">
  <input type="button" onclick="clear()">
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

javascript

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