我在我正在更新的项目中遇到此错误 - 他们想要将数据复制到剪贴板。自定义数据,我可以轻松地将它们组合在一起
错误 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) 我的项目.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) 我正在尝试将版本号设置为我想要的东西(阅读他们希望我做的事情)。他们想要一个特定的格式,我需要设置程序的版本。
我尝试使用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)