小编mvb*_*ffa的帖子

将RequireJS Javascript代码库缩小为单个文件

我是RequireJS的新手,也许这是一个已经讨论过的问题,但我找不到明确的答案或意见.

我有一个使用RequireJS的应用程序.由于需要,它有许多JavaScript文件由Require加载.按预期工作.

期待Fiddler检查员我可以看到应用程序启动时加载了所有文件.我相信Require已经对JavaScript文件的所有引用进行了深入遍历,并在开始时加载它们.

如果这是它的工作方式,我相信生成单个文件,缩小它并使用<script>html标记加载它会更好.

如果我使用所有脚本生成一个单独的文件,并预先加载它们,那么<script>RequireJS会再次加载它们吗?

难道我做错了什么?

在生产环境中,什么是更好的解决方案?

提前致谢.

requirejs

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

直接从TypeScript调用JavaScript

我刚刚下载了TypeScript文档.我有一些JavaScript类,我想在TypeScript测试应用程序中创建和使用这些类

如何从TypeScript调用包含的JavaScript的JavaScript函数.我不想创建"d.ts"文件.只是为了创建我的类,调用它的方法,访问它的属性.

我怎么做?


我正在尝试将kendoUI与TypeScript一起使用.

例如,要显示我必须要做的窗口:

  1. 有一个HTML来表示窗口的内容.我有一个id为logonDialog的div.这个div
    最初是隐藏的;
  2. 我创建窗口:logonDlg.kendoWindow(logOnParams);
  3. 然后使用jQuery我显示div:using logonDlg.show();

var logonDlg = $("logonDialog");

if (!logonDlg.data("kendoWindow")) {
   logonDlg.kendoWindow(logOnParams);
   logonDlg.show();
}
Run Code Online (Sandbox Code Playgroud)

它工作正常.JS是按照我的意愿生成的,但是我收到一个错误,因为属性'kendoWindow'在'JQuery'类型的值上不存在.

如何禁用此类错误.我不能说,瑞安说,工作.

typescript

21
推荐指数
3
解决办法
3万
查看次数

在TypeScript中创建非匿名AMD模块

有没有办法在Typescript中创建非匿名AMD模块.当我定义这样的模块时:

export module Bootstrapper {
  export function run() {
    var i = 0;
  }
}
Run Code Online (Sandbox Code Playgroud)

生成代码是:

define(["require", "exports"], function(require, exports) {
  (function (Bootstrapper) {
    function run() {
        var i = 0;
    }
    Bootstrapper.run = run;
  })(exports.Bootstrapper || (exports.Bootstrapper = {}));
})
Run Code Online (Sandbox Code Playgroud)

如何定义这样的非同名模块:

define('bootstrapper', ["require", "exports"], function(require, exports) {
  (function (Bootstrapper) {
    function run() {
        var i = 0;
    }
    Bootstrapper.run = run;
  })(exports.Bootstrapper || (exports.Bootstrapper = {}));
})
Run Code Online (Sandbox Code Playgroud)

typescript

10
推荐指数
2
解决办法
662
查看次数

如何在TypeScript AMD模块中定义依赖模块

如何使用TypeScript在AMD模块中定义依赖模块,包括例如jQuery和下划线.我使用JavaScript,例如,像这样:

define('moduleA',
    ['jquery', 'underscore'], function ($, _) {
    }
});
Run Code Online (Sandbox Code Playgroud)

如何做到这一点,以便TypeScript编译器生成此代码.

typescript

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

Visual Studio中的打字稿AMD模块

我使用Visual Studio 2012 Ultimate开始使用TypeScript.我在编译器命令中更改了我的MSBuild,包括--module amd标记.编译器开始生成AMD模块.

我在Nuget Packages中包含了我的项目RequireJS,并在我的主HTML中包含这一行:

<script type="text/javascript" data-main="scripts/SiteMaster"  src="scripts/require.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

我有两个模块SiteMaster和Authenticate.SiteMaster模块很简单:

export module SiteMaster {
    import auth = module("Authenticate");
    auth.Authenticate.run();
}
Run Code Online (Sandbox Code Playgroud)

它只导入Authenticate模块并调用函数run().SiteMaster的js是这样的:

define(["require", "exports"], function(require, exports) {
(function (SiteMaster) {
    var auth = __auth__;

    auth.Authenticate.run();
})(exports.SiteMaster || (exports.SiteMaster = {}));
Run Code Online (Sandbox Code Playgroud)

})

问题是,当我浏览解决方案时,我收到错误:

Microsoft JScript runtime error: '__auth__' is undefined
Run Code Online (Sandbox Code Playgroud)

我怎么解决这个问题 ???

提前致谢.

typescript

5
推荐指数
2
解决办法
4535
查看次数

加载min.js文件由TypeScript生成并带有Require

我有一个完整的应用程序使用Typescript和RequireJs,它工作得很好.我现在已经下载了WebEssentials,它正在生成缩小的脚本文件.WebEssentials生成与原始脚本文件同名的独立*.min.js文件.

如何告诉RequireJs加载我的缩小文件而不是原始脚本文件?

提前致谢

requirejs typescript

5
推荐指数
2
解决办法
5325
查看次数

导出的私有类型的函数参数

在安装了版本的Verison 0.8.1.1后,我收到以下错误:"导出的函数参数已经或正在使用私有类型'vs'"

在0.8.1版本中我没有问题.现在即使我unistall 0.8.1.1并重新安装0.8.1问题.代码是这样的:

import vs = module("app/framework/ViewStack");
export module Framework {
  export class ViewStacks {
        public static addViewStack( id: string, idContainer: string, 
                                    idParentContainer: string, idLoadingPanel: 
                                    string, loaded: bool ): vs.Framework.ViewStack {
        }
  }
}

In another file

export module Framework {
  export class ViewStack {
  }
}
Run Code Online (Sandbox Code Playgroud)

该错误标记在addViewStack的vs.Framework.ViewStack返回类型中.compareFramework.ViewStack的错误点是私有的,但它是由import子句导入的.

顺便说一句,我使用的是Visual Studio Web Express 2012,编译器命令是:tsc --sourcemap --module amd ...

如果我将返回类型更改为任何它,当然是有效的.没有任何改变,它总是起作用.

每个类或模块定义一个导出变量,其类型由另一个模块导出,发生错误.

你能帮助我吗 ???

提前到达

typescript

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

标签 统计

typescript ×6

requirejs ×2