html - Bagaimana untuk memanggil objek JavaScript fail js lain dalam halaman?
我想大声告诉你
我想大声告诉你 2017-06-14 10:52:32
0
5
865

Js telah diperkenalkan ke dalam halaman, tetapi kaedah di dalamnya tidak boleh dipanggil..(dalam folder yang sama)
Kod adalah seperti html berikut:

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <script type="text/javascript" src="./AgentGetway.js"></script>
</head>
<body>
<script type="text/javascript">
    console.log(AgentStatus['host']);//这个地方说AgentStatus is not defined
</script>
</body>
</html>
Kandungan

js adalah seperti berikut:

var AgentStatus={
    host :'127.0.0.1'
};

atau:

var AgentStatus=(function(){
    return {
        host:'127.0.0.1'
    }
})()

Saya tidak dapat, tolong beri saya tunjuk ajar...

我想大声告诉你
我想大声告诉你

membalas semua(5)
某草草

Penyoal hanya ingin mendapatkan rujukan kepada pembolehubah global dalam js. Keperluan mudah sedemikian tidak semestinya perlu melambatkan masa perolehan:

<script type="text/javascript">
    window.onload = function() {
        //这个地方 AgentStatus 就不会是 undefined 了
    }
</script>
左手右手慢动作

Gunakan konsol penyemak imbas chrome --network untuk melihat sama ada fail js anda dimuatkan. Jika ia dimuatkan, semak jika terdapat sebarang ralat dalam konsol.

仅有的幸福

Intipati masalah ini ialah modularisasi JS. Terdapat banyak penyelesaian sebelum ini, seperti AMD, CMD, requireJS, CommonJS... Terdapat banyak dalam talian, anda boleh mencarinya sendiri.
Sekarang izinkan saya memberitahu anda tentang penyelesaian yang telah dimasukkan ke dalam spesifikasi ES6:

  1. Mula-mula anda memerlukan pek web alat binaan atau gulp Sebagai perbandingan, yang pertama lebih popular sekarang, tetapi kos pembelajarannya lebih tinggi sedikit, atau jenis perancah yang telah disediakan seperti vue-cli

  2. .
  3. npm i babelAlat ini digunakan untuk menghuraikan kod ES6 ke dalam kod JS yang disokong oleh kebanyakan pelayar. Terdapat juga tutorial tentang cara melaksanakan langkah ini di Babel. Sudah tentu, jika anda menggunakan perancah seperti vue-cli, ini akan membantu anda mengkonfigurasi segala-galanya, termasuk perkhidmatan tempatan, supaya anda boleh melangkau langkah ini.

  4. Gunakan spesifikasi ES6 untuk menulis bahasa dan menyelesaikan masalah anda

// AgentGetway.js
export const AgentStatus = {
    host :'127.0.0.1'
}
// index.html 你的html文件中的script
<script>
    import {AgentStatus} from './AgentGetway.js'
    console.log(AgentStatus) // host: '127.0.0.1'
</script>  

petua:

  1. Situasi di mana anda menghasilkan semula masalah sepatutnya jarang ditemui dalam pembangunan projek sebenar, kerana ini adalah masalah yang telah diselesaikan beberapa tahun lalu, dan ia adalah masalah yang pasti akan dihadapi oleh projek besar

  2. Inti masalah ini adalah modularisasi JS Terdapat banyak dan pengetahuan yang luas yang terlibat dalam ini spesifikasi secara langsung

我想大声告诉你

module.export = fungsi yang anda ingin eksport;
Import fungsi yang dieksport pada halaman lain.

曾经蜡笔没有小新

require.js

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan