我想知道是否有办法在Visual Studio中为项目设置特定的TypeScript编译器版本。因此,我可以将项目配置为始终使用版本1.0,即使将发布新版本。
我知道it was not possible before,我想知道在TypeScript成熟到1.0版之后情况是否会发生变化。
我注意到现在Visual Studio在项目文件中创建了<TypeScriptToolsVersion>0.9</TypeScriptToolsVersion>
属性,但找不到任何关于它的文档。
答案 0 :(得分:22)
如果您尝试使用TypeScript版本1.0使用<TypeScriptToolsVersion>0.9</TypeScriptToolsVersion>
编译项目,则会出现以下错误:
您的项目文件使用的TypeScript编译器和工具版本与此计算机上当前安装的版本不同。在C:\ Program Files(x86)\ Microsoft SDKs \ TypeScript \ 0.9 \ tsc.exe中找不到编译器。您可以通过更改项目文件中的元素来解决此问题。
因此它阻止您使用较新版本进行编译。但它并没有将编译器置于0.9兼容模式。
但是如果安装了TypeScript 0.9,它将针对该版本进行编译。所以,是的,您可以使用属性强制使用特定版本的TypeScript编译器。
基本上<TypeScriptToolsVersion>
做的是它改变了编译器的路径:
C:\Program Files (x86)\Microsoft SDKs\TypeScript\<TypeScriptToolsVersion>\tsc.exe
答案 1 :(得分:8)
我通过在条件语句中$(TypeScriptToolsVersion)\
之后添加TypeScript\
来解决它。
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets"
Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\$(TypeScriptToolsVersion)\Microsoft.TypeScript.targets')" />
答案 2 :(得分:5)
Visual Studio版本 - &gt; VS2013
<PropertyGroup> ...... <IISExpressUseClassicPipelineMode /> <TypeScriptToolsVersion>1.8</TypeScriptToolsVersion> </PropertyGroup>
答案 3 :(得分:0)
我们可以使用csproj文件中的以下行在Visual Studio中排除类型脚本文件编译。
<TypeScriptToolsVersion>0.9</TypeScriptToolsVersion>
在public class WithTestNG {
WebDriver driver;
@Parameters("browser")
@BeforeClass
{
if(browser.equalsIgnoreCase("firefox"))
System.setProperty("webdriver.gecko.driver","/Users/Preet/Desktop
/Path/geckodriver" );
driver = new FirefoxDriver();
}
else if (browser.equalsIgnoreCase("ie"))
{
System.setProperty("webdriver.ie.driver","C:\\Users\\CP\\Downloads\\IED
riverServer_x64_3.4.0\\IEDriverServer.exe");
driver = new InternetExplorerDriver();
}
else if (browser.equalsIgnoreCase("chrome"))
{
System.setProperty("webdriver.chrome.driver","/Users/Preet12/Desktop/Pa
th/chromedriver" );
driver = new ChromeDriver();
}
driver.manage().window().maximize();
}
@Test(priority=0)
public void OpenStore()
{
String URL = "www.facebook.com";
driver.get(URL);
String Actual_URL = driver.getCurrentUrl();
String Expected_URL = "https://www.facebook.com/";
Assert.assertEquals(Actual_URL, Expected_URL, "URL doesn't match");
System.out.println("URL verified");
}
这一行之后。