【问题标题】:Appcelerator - including different files (circular reference edition in ios)Appcelerator - 包括不同的文件(ios中的循环参考版)
【发布时间】:2016-10-20 14:32:00
【问题描述】:

在钛应用加速器中,如果我有两个文件 - A 和 B - B 引用 A 的最佳方式是什么?

在为android开发时,如果我在B中包含A

var xyz = require("A");

然后我可以通过xyz.someMethod();访问A的方法

但是,我记得在为 ios 开发时,require 方法会遇到问题,如果我将它包含在 B 中,然后无论出于何种原因将它包含在引用 B 的 C 中,我都会得到一个引用循环!

是否有一些包含文件的标准(即适用于 ios、android、windows 等)方法 - 比如以某种方式将它们包含在 app.js 中?

(我不使用合金)

【问题讨论】:

    标签: android ios titanium appcelerator


    【解决方案1】:

    首先,如果您是require,则不应添加.js

    如果你需要文件,你需要使用 commonjs 策略。

    因此,如果您想访问a.js 中的函数,则需要将其导出:

    module.exports = {
        myFunction: myLocalFunction
    }
    

    你可以这样称呼它:

    require('a').myFunction();
    

    var a = require('a');
    a.myFunction();
    

    【讨论】:

    • 我认为你错过了问题的核心——尽管我注意到我在示例中犯了一个错误——但是当我在 android 中使用相同的样式时,问题是 ios 中的循环引用
    • 如果a 需要bb 需要a 那么你构建它错误并且可能使用1个文件更好。依赖是正常的,循环依赖不是;)
    猜你喜欢
    • 2017-11-14
    • 1970-01-01
    • 1970-01-01
    • 2020-12-30
    • 2015-05-06
    • 2013-07-09
    • 1970-01-01
    • 2019-06-14
    • 1970-01-01
    相关资源
    最近更新 更多