Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.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
Node.js 使用RequireJs时未从Html调用Typescript函数_Node.js_Angularjs_Typescript_Requirejs_Node Modules - Fatal编程技术网

Node.js 使用RequireJs时未从Html调用Typescript函数

Node.js 使用RequireJs时未从Html调用Typescript函数,node.js,angularjs,typescript,requirejs,node-modules,Node.js,Angularjs,Typescript,Requirejs,Node Modules,我正在尝试使用RequireJs加载Html中的Typescript函数。我在类型脚本中创建了一个简单的警报函数,如下所示,它似乎没有被调用 Eventhandler.ts: export function Main() { alert("Hi"); } Eventhandler.js: define(["require", "exports"], function (require, exports) { "use strict"; Object.define

我正在尝试使用RequireJs加载Html中的Typescript函数。我在类型脚本中创建了一个简单的警报函数,如下所示,它似乎没有被调用

Eventhandler.ts:

export function Main() 
{
    alert("Hi");

 }
Eventhandler.js:

define(["require", "exports"], function (require, exports) 
{
    "use strict";
    Object.defineProperty(exports, "__esModule", { value: true });
    function Main() {
        alert("Hi");
    }
    exports.Main = Main;
});
tsconfig.json:

{
  "compilerOptions": {
    "noImplicitAny": false,
    "noEmitOnError": true,
    "removeComments": true,
    "sourceMap": true,
    "module": "AMD",
    "target": "es5",
    "outDir": "../appscriptJS"
  },
  "exclude": [
    "node_modules",
    "wwwroot"
  ]
}
require配置所在的主js文件是app.js

app.ts:

/// <reference path="../scripts/typings/requirejs/require.d.ts" />
require.config(
{
    baseUrl: './appscriptJS',
    paths: { jQuery: '../scripts/jquery-3.4.1.min.js' }
});

require(['EventHandler'], function(app){ app.Main();});

Html页面: ``` 输入您的手机号码:

<div><span id="message"></span></div>
<input type="button" class="btn-default" id="submit" value="Submit" />

<script data-main="app.js" src="~/Scripts/require.js"></script>

```

```
修复非常简单。 require js api中的data main属性不在requirejs配置文件中给定的基本url中搜索

因此,必须在html脚本中给出应用程序js文件的完整路径,如下所示:

<script data-main="../appscriptJS/app.js" src="~/Scripts/require.js"></script>

<script data-main="../appscriptJS/app.js" src="~/Scripts/require.js"></script>