JS modules - ReferenceError: is not defined
up vote
0
down vote
favorite
I'm trying to import a js function from an external .js file using the "module" type but I keep getting the error "ReferenceError: polygonClick is not defined".
Here's my code:
HTML:
<!DOCTYPE html>
<html>
<head>
...
<script src="js/map.js" type="module"></script>
</head>
<body>
...
<script>
function initMap() {
...
$.getJSON( "./DI.json", function( coords ) {
var building = new google.maps.Polygon({...});
building.setMap(map);
building.addListener('click', (event) => polygonClick(event));
});
...
}
</script>
</body>
</html>
JS:
import {MDCDrawer} from './@material/drawer';
export default { polygonClick };
const drawer = MDCDrawer.attachTo(document.querySelector('.mdc-drawer'));
function polygonClick(event) {
console.log(event);
}
Can someone tell me what I'm doing wrong pls?
Thank you in advance!
javascript html material-design referenceerror
add a comment |
up vote
0
down vote
favorite
I'm trying to import a js function from an external .js file using the "module" type but I keep getting the error "ReferenceError: polygonClick is not defined".
Here's my code:
HTML:
<!DOCTYPE html>
<html>
<head>
...
<script src="js/map.js" type="module"></script>
</head>
<body>
...
<script>
function initMap() {
...
$.getJSON( "./DI.json", function( coords ) {
var building = new google.maps.Polygon({...});
building.setMap(map);
building.addListener('click', (event) => polygonClick(event));
});
...
}
</script>
</body>
</html>
JS:
import {MDCDrawer} from './@material/drawer';
export default { polygonClick };
const drawer = MDCDrawer.attachTo(document.querySelector('.mdc-drawer'));
function polygonClick(event) {
console.log(event);
}
Can someone tell me what I'm doing wrong pls?
Thank you in advance!
javascript html material-design referenceerror
Make your second script amodule
as well and import thepolygonClick
function from the first one. Otherwise it will stay in the module's scope - unlike normal scripts, module code does not run in the global scope.
– Bergi
Nov 12 at 19:16
@Bergi What do you define as my second script ? The wholeinitMap
function ?
– Asfourhundred
Nov 16 at 21:22
Yes, that script. Although it's not clear where you are callinginitMap
from.
– Bergi
Nov 16 at 22:14
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I'm trying to import a js function from an external .js file using the "module" type but I keep getting the error "ReferenceError: polygonClick is not defined".
Here's my code:
HTML:
<!DOCTYPE html>
<html>
<head>
...
<script src="js/map.js" type="module"></script>
</head>
<body>
...
<script>
function initMap() {
...
$.getJSON( "./DI.json", function( coords ) {
var building = new google.maps.Polygon({...});
building.setMap(map);
building.addListener('click', (event) => polygonClick(event));
});
...
}
</script>
</body>
</html>
JS:
import {MDCDrawer} from './@material/drawer';
export default { polygonClick };
const drawer = MDCDrawer.attachTo(document.querySelector('.mdc-drawer'));
function polygonClick(event) {
console.log(event);
}
Can someone tell me what I'm doing wrong pls?
Thank you in advance!
javascript html material-design referenceerror
I'm trying to import a js function from an external .js file using the "module" type but I keep getting the error "ReferenceError: polygonClick is not defined".
Here's my code:
HTML:
<!DOCTYPE html>
<html>
<head>
...
<script src="js/map.js" type="module"></script>
</head>
<body>
...
<script>
function initMap() {
...
$.getJSON( "./DI.json", function( coords ) {
var building = new google.maps.Polygon({...});
building.setMap(map);
building.addListener('click', (event) => polygonClick(event));
});
...
}
</script>
</body>
</html>
JS:
import {MDCDrawer} from './@material/drawer';
export default { polygonClick };
const drawer = MDCDrawer.attachTo(document.querySelector('.mdc-drawer'));
function polygonClick(event) {
console.log(event);
}
Can someone tell me what I'm doing wrong pls?
Thank you in advance!
javascript html material-design referenceerror
javascript html material-design referenceerror
asked Nov 12 at 18:43
Asfourhundred
3518
3518
Make your second script amodule
as well and import thepolygonClick
function from the first one. Otherwise it will stay in the module's scope - unlike normal scripts, module code does not run in the global scope.
– Bergi
Nov 12 at 19:16
@Bergi What do you define as my second script ? The wholeinitMap
function ?
– Asfourhundred
Nov 16 at 21:22
Yes, that script. Although it's not clear where you are callinginitMap
from.
– Bergi
Nov 16 at 22:14
add a comment |
Make your second script amodule
as well and import thepolygonClick
function from the first one. Otherwise it will stay in the module's scope - unlike normal scripts, module code does not run in the global scope.
– Bergi
Nov 12 at 19:16
@Bergi What do you define as my second script ? The wholeinitMap
function ?
– Asfourhundred
Nov 16 at 21:22
Yes, that script. Although it's not clear where you are callinginitMap
from.
– Bergi
Nov 16 at 22:14
Make your second script a
module
as well and import the polygonClick
function from the first one. Otherwise it will stay in the module's scope - unlike normal scripts, module code does not run in the global scope.– Bergi
Nov 12 at 19:16
Make your second script a
module
as well and import the polygonClick
function from the first one. Otherwise it will stay in the module's scope - unlike normal scripts, module code does not run in the global scope.– Bergi
Nov 12 at 19:16
@Bergi What do you define as my second script ? The whole
initMap
function ?– Asfourhundred
Nov 16 at 21:22
@Bergi What do you define as my second script ? The whole
initMap
function ?– Asfourhundred
Nov 16 at 21:22
Yes, that script. Although it's not clear where you are calling
initMap
from.– Bergi
Nov 16 at 22:14
Yes, that script. Although it's not clear where you are calling
initMap
from.– Bergi
Nov 16 at 22:14
add a comment |
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53268248%2fjs-modules-referenceerror-function-is-not-defined%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Make your second script a
module
as well and import thepolygonClick
function from the first one. Otherwise it will stay in the module's scope - unlike normal scripts, module code does not run in the global scope.– Bergi
Nov 12 at 19:16
@Bergi What do you define as my second script ? The whole
initMap
function ?– Asfourhundred
Nov 16 at 21:22
Yes, that script. Although it's not clear where you are calling
initMap
from.– Bergi
Nov 16 at 22:14