我正在嘗試將一個簡單的 JSon 檔案加載到一個變數中,但我遇到了墻壁。
這是我使用的代碼:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<title>Require test</title>
<script charset="utf-8" src="require.js"></script>
</head>
<body>
<script type="text/javascript">
root = require('./data_test_v2.json');
console.log(root);
</script>
</body>
</html>
這是我得到的錯誤:
Uncaught Error: Module name "data_test_v2.json" has not been loaded yet for context: _. Use require([])
https://requirejs.org/docs/errors.html#notloaded
require.js 檔案是 RequireJS 的最新版本(來自https://requirejs.org/docs/release/2.3.6/comments/require.js)。
似乎是一個非常基本的問題..歡迎任何幫助。
uj5u.com熱心網友回復:
Node.jsrequire提供的函式將加載CommonJS模塊和JSON。
在require所提供的功能Require.js將加載AMD模塊。
它們不是為了兼容而設計的。它們具有完全不同的 API。Require.js不支持加載 JSON。
如果要在瀏覽器中使用客戶端代碼從 JSON 加載資料,請使用fetch,XHTMLHttpRequest或包含其中之一的庫(例如axios)。
uj5u.com熱心網友回復:
您可以使用 RequireJS 來加載 JSON 檔案,但為此您需要一個JSON 插件。
此外,您必須稍微修改您的代碼,因為 RequireJS 是異步的。它要求您提供一組必需的依賴項作為第一個引數加載,并提供一個回呼作為第二個引數。回呼將被執行,加載的依賴項將作為引數注入。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<title>Require test</title>
<script charset="utf-8" src="require.js"></script>
</head>
<body>
<script type="text/javascript">
root = require(['./data_test_v2.json'], (json) => { console.log(json); });
console.log(root);
</script>
</body>
</html>
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/376381.html
標籤:javascript 要求 文件读取
下一篇:可選組的正則運算式長度檢查帳戶
