aboutsummaryrefslogtreecommitdiff
path: root/files/zh-cn/mozilla/add-ons/code_snippets/modules/index.html
blob: 413e32f59af8e5be5acbc42bfe4063b257670834 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
---
title: Modules
slug: Mozilla/Add-ons/Code_snippets/Modules
translation_of: Archive/Add-ons/Code_snippets/Modules
---
<p><span style="color: #000000; display: inline !important; float: none; font-family: Cantarell; font-size: 14.666666984558105px; font-style: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal;"><font><font>{{LegacyAddonsNotice}}</font></font></span></p>

<p><font><font>一些简单的代码将</font></font><a href="/en/JavaScript_code_modules" title="en / JavaScript代码模块"><font><font>JavaScript模块</font></font></a><font><font>转换为非Mozilla特定的代码(例如,如果移植到浏览器)。</font><font>eval()的使用可能不会被关注,因为它仅在</font></font><code>EXPORTED_SYMBOLS</code><font><font> 数组</font><font>上使用,</font><font>而不依赖于用户输入。</font></font></p>

<pre class="brush: js"><font><font>函数importModule(thatObj){</font></font><font><font>
    thatObj = thatObj || </font><font>窗口;</font></font>
<font><font>
    var EXPORTED_SYMBOLS = [</font></font><font><font>
    //把符号放在这里</font></font><font><font>
    ]。</font></font>
<font><font>
    //你的代码在这里...</font></font>
<font><font>
    //在你的代码结尾处:(假设'i'和'thatObj'都没有被导出!)</font></font><font><font>
    for(var i = 0; i &lt;EXPORTED_SYMBOLS.length; i ++){thatObj [EXPORTED_SYMBOLS [i]] = eval(EXPORTED_SYMBOLS [i]);}</font></font><font><font>
}</font></font>
</pre>

<p><font><font>或一次性使用模块:</font></font></p>

<pre class="brush: js"><font><font>(function(thatObj){</font></font><font><font>
    thatObj = thatObj || </font><font>窗口;</font></font>
<font><font>
    var EXPORTED_SYMBOLS = [</font></font><font><font>
    //把符号放在这里</font></font><font><font>
    ]。</font></font>
<font><font>
    //你的代码在这里...</font></font>
<font><font>
    //在你的代码结尾处:(假设'i'和'thatObj'都没有被导出!)</font></font><font><font>
    for(var i = 0; i &lt;EXPORTED_SYMBOLS.length; i ++){thatObj [EXPORTED_SYMBOLS [i]] = eval(EXPORTED_SYMBOLS [i]);}</font></font><font><font>
})(); </font><font>//可以在这里放置一个对象参数</font></font></pre>