【发布时间】:2021-04-24 18:41:10
【问题描述】:
我正在尝试向网页公开一个函数,该函数可以在外部、window.load 或任何时候调用。
DoThing.ts
import * as lib from "libs";
export default function DoAThingFunc():void{
console.log('Do a thing)'
}
这就是导入的东西 ExposeDoThing.js
import DoAThingFunc from './DoThing'
window.exposeFunc = DoAThing
window.exposeFunc():
webpack 4 捆绑包
entry: {
main: './src/MainEntry.tsx',
popupcallback: './src/ExposeDoThing.js'
},
output: {
path: path.join(__dirname, outputDir + "/js"),
filename: '[name].js',
publicPath: "/js/",
library:'pclGlobal'
},
MyPage.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Pop up</title>
</head>
<body>
<script src="/js/vendor-main.js" type="text/javascript"></script>
<script src="/js/popupcallback.js" type="text/javascript"></script>
</body>
</html>
什么都没有被调用,pclGlobal 是未定义的,即使:
var pclGlobal=(window.webpackJsonppclGlobal=window.webpackJsonppclGloba...
出现在输出中。并且没有从函数中调用任何内容。
我只想在脚本加载后触发函数DoAThingFunc(),我错过了什么?
【问题讨论】:
标签: javascript typescript webpack webpack-4