Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript TypeScript+AMD+out参数不起作用_Javascript_Typescript - Fatal编程技术网

Javascript TypeScript+AMD+out参数不起作用

Javascript TypeScript+AMD+out参数不起作用,javascript,typescript,Javascript,Typescript,我下载了一个使用AMD的项目。一切正常,但我想测试如何将所有编译的文件连接到一个output all.js文件中。我找到了一些关于-out参数的信息,并从这里开始执行以下步骤: 这对我不起作用,我得到一个错误: 命令tsc-module AMD-out all.js C:\TypeScriptWithRequiremed0.8.1\app\classes\Test.ts C:\TypeScriptWithRequiremeamd\U 0.8.1\modules\require.d.ts C:\T

我下载了一个使用AMD的项目。一切正常,但我想测试如何将所有编译的文件连接到一个output all.js文件中。我找到了一些关于-out参数的信息,并从这里开始执行以下步骤:

这对我不起作用,我得到一个错误:

命令tsc-module AMD-out all.js C:\TypeScriptWithRequiremed0.8.1\app\classes\Test.ts C:\TypeScriptWithRequiremeamd\U 0.8.1\modules\require.d.ts C:\TypeScriptWithRequireAMD\u 0.8.1\app\classes\Greeter.ts C:\TypeScriptWithRequireAMD\u 0.8.1\app\AppConfig.ts C:\TypeScriptWithRequiremeamd\u 0.8.1\app\AppMain.ts已退出,代码为 一,

以下是我的文件结构的外观:

顺便说一句,我还有第二个问题。-out参数是否从库目录复制内容?如果没有,如何将它们也包括在内

[编辑1。]

哦,我忘了。。。这是我的.csproj文件的一部分:


根据定义,AMD脚本由AMD加载程序异步加载。为了将它们全部放在一个文件中,您需要对每个文件的依赖项进行一些分析,以便它们以正确的顺序插入。这不是out所做的事情。您需要研究类似的内容。

根据定义,AMD脚本由AMD加载程序异步加载。为了将它们全部放在一个文件中,您需要对每个文件的依赖项进行一些分析,以便它们以正确的顺序插入。这不是out所做的事情。您需要研究类似的内容。

当您使用-out标志时,不需要将所有文件传递给编译器。将顶级文件传递给它,它将遍历依赖项并发现所有其他文件。虽然这与AMD并不兼容,但捆绑是一种不同的技术,因为所有脚本都将加载,因为它们位于一个文件中。相关:使用-out标志时,不需要将所有文件传递给编译器。将顶级文件传递给它,它将遍历依赖项并发现所有其他文件。虽然这与AMD并不兼容,但捆绑是一种不同的技术,因为所有脚本都将加载,因为它们都在一个文件中。相关:根据文章,我安装了Node.Js,并尝试设置类似于Node r.Js的构建后事件命令行-o app/AppConfig.Js。命令节点r.js-o app/AppConfig.js退出时立即出现错误,代码为9009。无论我如何更改r.js和AppConfig.js的路径。我在主要帖子中粘贴了AppConfig.js的内容。我建议在将其集成到VS构建步骤之前,先从命令行脚本运行构建。但是,请参阅以了解可能的解决方案,这有所帮助。从命令行,一切正常。我是在一个批处理文件中完成的,该批处理文件作为生成后事件运行。。。。谢谢你的帮助!祝您今天过得愉快!根据这篇文章,我安装了Node.Js,并尝试设置构建后事件命令行,如Node r.Js-o app/AppConfig.Js。命令节点r.js-o app/AppConfig.js退出时立即出现错误,代码为9009。无论我如何更改r.js和AppConfig.js的路径。我在主要帖子中粘贴了AppConfig.js的内容。我建议在将其集成到VS构建步骤之前,先从命令行脚本运行构建。但是,请参阅以了解可能的解决方案,这有所帮助。从命令行,一切正常。我是在一个批处理文件中完成的,该批处理文件作为生成后事件运行。。。。谢谢你的帮助!祝您今天过得愉快!
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
    <TypeScriptSourceMap>--module AMD</TypeScriptSourceMap>
</PropertyGroup>
<Target Name="BeforeBuild">
    <Message Text="Compiling TypeScript files" />
    <Message Text="Executing tsc$(TypeScriptSourceMap) @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
    <Exec Command="tsc $(TypeScriptSourceMap) --out all.js @(TypeScriptCompile ->'&quot;%(fullpath)&quot;', ' ')" />
</Target>
require.config({
    baseUrl: '../',
    paths: {
        'jquery': 'lib/jquery-1.7.2',
        'underscore': 'lib/underscore',
        'backbone': 'lib/backbone',
        'console': 'lib/console',
        'greeter': 'app/classes/Greeter',
        'test': 'app/classes/Test'
    },
    shim: {
        jquery: {
            exports: '$'
        },
        underscore: {
            exports: '_'
        },
        backbone: {
            deps: [
                "underscore", 
                "jquery"
            ],
            exports: "Backbone"
        },
        console: {
            exports: "console"
        },
        greeter: {
            deps: [
                "test"
            ]
        },
        test: {
            deps: [
                "greeter"
            ]
        }
    }
});
require([
    'jquery', 
    'underscore', 
    'backbone', 
    'console', 
    'app/AppMain', 
    'app/classes/Greeter', 
    'app/classes/Test'
], function ($, _, Backbone, console, main, greeter, test) {
    var appMain = new main.AppMain();
    appMain.run();
});