小编Son*_*sen的帖子

错误 TS2339:类型“导航器”上不存在属性“剪贴板”

我在我正在更新的项目中遇到此错误 - 他们想要将数据复制到剪贴板。自定义数据,我可以轻松地将它们组合在一起

错误 TS2339:类型“导航器”上不存在属性“剪贴板”

import * as React from 'react';
import Loading from './Loading';
import axios from 'axios';
import { AppConfig } from '../../Config';
import 'jquery-ui-bundle';
// import 'jquery-ui-bundle/jquery-ui.css';
import '../helpers/datepicker-skins/jquery-ui-1.10.1.css';
import '../helpers/datepicker-skins/cangas.datepicker.css';

class Log extends React.Component<any, any> {
    validationCheck(): any {}

    constructor(props: any) {
        super(props);
        this.state = { FaultyUnits: [], FaultyUnitsPackages: [] };
    }
...
    public CopyEmailAddresses(event: any): void {
        navigator.clipboard.writeText("this.state.textToCopy");  <---- error on this line
    }
Run Code Online (Sandbox Code Playgroud)

键入时,建议显示剪贴板和写入文本,但在保存/编译时它不接受它。

当在剪贴板上单击 F12(转到 Defenition)时,我得到 lib.dom.d.ts:

....
/** The state and the …
Run Code Online (Sandbox Code Playgroud)

typescript reactjs

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

错误 MSB4801:.NET Core 版本的 MSBuild 不支持任务工厂“CodeTaskFactory”

我的项目.Net 6中有一个UsingTask。我有一个小脚本来使用CodeTaskFactory设置AssemblyVersion。请参阅下面的代码。但是,我无法使用 MS Build 在构建服务器上使用或执行 CodeTaskFactory。

它给出了这些错误:

Error MSB4801: The task factory "CodeTaskFactory" is not supported on the .NET Core version of MSBuild
Error MSB4175: The task factory "CodeTaskFactory" could not be loaded from the assembly "C:\Program Files\dotnet\sdk\6.0.101\Microsoft.Build.Tasks.Core.dll". The task factory must return a value for the "TaskType" property
Run Code Online (Sandbox Code Playgroud)

我研究了其他一些选择,但都失败了,因为它们缺少一件事或另一件事。所以最后我在这里问,在 MS Build 服务器上运行带有输出的 usingTask 有哪些选项?

我的代码

  <UsingTask TaskName="mytask"    
      TaskFactory="CodeTaskFactory"
      AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
    <ParameterGroup>
      <AssemblyVersion ParameterType="System.String" Output="true" />
    </ParameterGroup>
    <Task>
      <Code Type="Fragment" Language="cs">
        <![CDATA[
          Log.LogMessage(MessageImportance.High, "we are here");
          AssemblyVersion = "1.2.3.4";
        ]]>
      </Code> …
Run Code Online (Sandbox Code Playgroud)

c# msbuild .net-6.0

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

通过设置 PropertyGroup(csproj 文件中的项目变量)来设置版本号

我正在尝试将版本号设置为我想要的东西(阅读他们希望我做的事情)。他们想要一个特定的格式,我需要设置程序的版本。

我尝试使用UsingTask 来设置PropertyGroup 变量。我的UsingTask正在运行。

所有这一切对我来说都是新的,我设法获得了下面的代码。现在,如何设置本地项目变量?我的初始值已使用,接下来我想在UsingTask中以编程方式设置它

这一切都在 *.csproj 文件中完成

<Project Sdk="Microsoft.NET.Sdk">

<!-- my additional project variable, used below -->
  <PropertyGroup Label="UserMacros">
    <AssemblyVersion>1.2.3.5</AssemblyVersion>
  </PropertyGroup>

  <UsingTask TaskName="EnvVarSet"
      TaskFactory="CodeTaskFactory"
      AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
    <Task>
      <Code Type="Fragment" Language="cs">
        <![CDATA[
// here I want to set the version number to our format
          Log.LogMessage(MessageImportance.High, "**** Setting variables");
          System.Environment.SetEnvironmentVariable("AssemblyVersion", "1.5.6.7");                 
          var a = Environment.GetEnvironmentVariable("AssemblyVersion");
          Log.LogMessage(MessageImportance.High, "**** Value is: " +a);
        ]]>
      </Code>
    </Task>    
  </UsingTask>
  
  <PropertyGroup>
    <OutputType>WinExe</OutputType>
<!-- the version number I want to set -->
    <Version>$(AssemblyVersion)</Version>
<!-- this does not work …
Run Code Online (Sandbox Code Playgroud)

c# visual-studio .net-core

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

标签 统计

c# ×2

.net-6.0 ×1

.net-core ×1

msbuild ×1

reactjs ×1

typescript ×1

visual-studio ×1