這是我的索引檔案
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta content="IE=Edge" http-equiv="X-UA-Compatible">
<meta name="description" content="test">
<!-- iOS meta tags & icons -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-title" content="test">
<title>test</title>
</head>
<body>
<script type="text/javascript">
console.log('myname');
calcbymodel('/model.json',[0,0,0,0]);
</script>
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/[email protected]/dist/tf.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/fetch.js"></script><!-- fetch -->
<script src="./babel.min.js"></script><!-- babel -->
<script src="./app.js" type='text/babel'></script>
</body>
</html>
這是 app.js 檔案
async function calcbymodel(path, input) {
const model = await tf.loadLayersModel(path);
const r = model.predict(tf.tensor(input));
r.data().then(array => console.log(array));
return r.data();
}
我想知道為什么控制臺會說:
Uncaught ReferenceError: calcbymodel is not defined
at (index):21
(anonymous) @ (index):21
對于 babel 腳本,由于公司政策拒絕,無法匯入。所以,我作為本地檔案匯入。這是鏈接:
https://unpkg.com/@babel/standalone/babel.min.js
有人可以幫我嗎?
uj5u.com熱心網友回復:
您需要將 app.js 檔案移動到使用該函式的位置上方。在這種情況下,您需要將正在使用該函式的腳本標記移動到 app.js 腳本下方,或者將 app.js 腳本移動到您使用該函式的上方。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta content="IE=Edge" http-equiv="X-UA-Compatible">
<meta name="description" content="test">
<!-- iOS meta tags & icons -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-title" content="test">
<title>test</title>
</head>
<body>
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/[email protected]/dist/tf.min.js">
</script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/fetch.js">
</script><!-- fetch -->
<script src="./babel.min.js"></script><!-- babel -->
<script src="./app.js" type='text/babel'></script>
<script type="text/javascript">
console.log('myname');
calcbymodel('/model.json',[0,0,0,0]);
</script>
</body>
</html>
因為 HTML 是按照它們在檔案中的順序加載 js 檔案的,所以可以在 HTML 檔案中它下面的任何腳本標記中使用函式。
uj5u.com熱心網友回復:
JS 當前按照您定義的順序執行:
<body>
<body>
<-- This is first -->
<script type="text/javascript">
console.log('myname');
calcbymodel('/model.json', [0, 0, 0, 0]);
</script>
<-- This is second-->
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/[email protected]/dist/tf.min.js"></script>
<-- This is third-->
<script src="https://cdn.jsdelivr.net/npm/[email protected]/fetch.js"></script>
<!-- fetch -->
<-- This is fourth-->
<script src="./babel.min.js"></script>
<!-- babel -->
<-- This is fitht-->
<script src="./app.js" type="text/babel"></script>
</body>
如果你想在你的代碼中訪問另一個函式,你需要將你的第一個腳本移到底部:
<body>
<-- This is first -->
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/[email protected]/dist/tf.min.js"></script>
<-- This is second-->
<!-- fetch -->
<script src="https://cdn.jsdelivr.net/npm/[email protected]/fetch.js"></script>
<-- This is third-->
<!-- babel -->
<script src="./babel.min.js"></script>
<-- This is fourth-->
<script src="./app.js" type="text/babel"></script>
<-- This is fitht-->
<script type="text/javascript">
console.log('myname');
calcbymodel('/model.json', [0, 0, 0, 0]);
</script>
</body>
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/355553.html
標籤:javascript 张量流.js
下一篇:無法從API獲取影像以顯示
