如何在加载事件的 html 页面中加载 es6 模块

戴夫

我是 ES6 模块的新手,请告诉我如何从网页上的 ES6 模块导入函数,然后在按钮上的单击事件上使用该函数。

到目前为止,我已经在一个名为 (ES6Part3Module.js) 的文件中定义了这个模块:

export function sayHello() {
return "hi there folks";
}

然后在我的 html 页面中,我以这种方式加载了模块:

`<script src="ES6Part3Module.js" type="module"`>`</script`>

我现在想要一些为页面上的按钮创建点击处理程序的方法:

`<button id="sayHelloButton"`>Say Hello`</click`>

它从我的 ES6 模块调用 sayHello() 函数。

我尝试在我的页面上创建一个本地(模块)脚本:

`<script type="module"`>
import sayHello from "ES6Part3Module.js";
window.hello = sayHello;
`</script`>

然后在加载时运行的页面上有一些 jquery:

$( function() {

$("#sayHelloButton").click(function() {
alert(hello());
});

});

但是当点击html页面上的按钮时,我得到一个错误,说没有定义hello。

请你能告诉我我做错了什么吗?

戴夫

这是使用旧版本 system.js 的答案。我会对使用新版本 system.js 的答案感兴趣。

<!--
ref (https://livebook.manning.com/#!/book/angular-2-development-with-typescript/chapter-2/159, p 159, listing2.7)
-->
<!--unpkg is a fast, global content delivery network for everything on npm-->
<script src="//unpkg.com/[email protected]/dist/es6-promise.js"></script>
<script src="//unpkg.com/[email protected]/bin/traceur.js"></script>
<!--system js, version that was released in 21/08/2016-->
<script src="//unpkg.com/[email protected]/dist/system.src.js"></script>

<script>
System.import('./ES6Part3Module.js').then(ES6Part3Module => {
  window.hello = ES6Part3Module.sayHello;
});
</script>

<script>
$( function() {

$("#sayHelloButton").click(function() {
alert(hello());
});

});
</script>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在条件字段 drupal 模块中加载页面之前隐藏 HTML 元素?

来自分类Dev

如何在Perl中加载HTML页面

来自分类Dev

如何在JavaScript中加载HTML页面

来自分类Dev

ES6的模块加载器也可以加载资产(html / css / ...)

来自分类Dev

延迟模块加载在ES6中如何工作

来自分类Dev

SystemJ异步加载ES6模块时如何处理Kendo MVC事件绑定

来自分类Dev

在一个表达式中加载并使用ES6模块

来自分类Dev

无法使用Webpack加载ES6模块

来自分类Dev

在onclick页面中加载html表单

来自分类Dev

jar文件在JEditorPane中加载html页面

来自分类Dev

在模式框中加载完整的HTML页面

来自分类Dev

在Node.js中加载HTML页面

来自分类Dev

jQuery:在div中加载html页面

来自分类Dev

如何在initrd中加载模块?

来自分类Dev

如何在Linux中加载tun模块?

来自分类Dev

在Angular中加载模块

来自分类Dev

在Angular中加载模块

来自分类Dev

在IronPython中加载模块

来自分类Dev

ES6模块与HTML导入

来自分类Dev

ES6模块与HTML导入

来自分类Dev

通过导入ES6模块来加载和使用旧版JS模块(例如IIFE)

来自分类Dev

如何使用AJAX和JQuery在div中加载HTML页面

来自分类Dev

如何使用AJAX和JQuery在div中加载html页面

来自分类Dev

通过模块加载和类继承将ES6转换为ES5

来自分类Dev

ES6模块加载器不会加载使用TypeScript编写的Angular Controller

来自分类Dev

如何在iOS的Safari中仅加载WebView中的.html页面和在Safari中加载所有www页面?

来自分类Dev

如何在同一<div>容器中加载远程HTML页面链接?

来自分类Dev

如何在后台在WebView中加载许多(200-300)HTML页面

来自分类Dev

如何在单个 html 页面中加载 react/react-dom?

Related 相关文章

热门标签

归档