被忽略的Yii2前端框架2-创建Yii JavaScript 模块

yii2 Yii2 · best · 于 4年前 发布 · 1765 次阅读

yii是所有 Yii JavaScript 模块的根(root)模块。 它通过函数yii.initModule(),实现了在模块中组织JavaScript代码的机制。

每个模块都应该命名为x.y.z,其中x代表根(root)模块(对于Yii核心代码,这是yii)。 一个模块的结构如下:

window.yii.sample = (function($) {
     var pub = {
          //此模块当前是否处于激活状态。如果为false,则不会为此模块调用init(),也不会为其所有子模块调用它。
          //如果此属性未定义,则表示为true。
          isActive: true,
          init: function() {
              // ... 这里写模块初始化时运行的代码
          },

         // ... 在这里定义其他的公共函数和属性
     };

     // ... 在这里定义私有函数和属性

     return pub;
 })(window.jQuery);

使用此结构,可以为模块定义公共和私有的函数/属性。 私有的函数/属性仅在模块内可见,而公共的函数/属性可在模块外访问。例如,您可以访问yii.sample.isActive

必须为所有模块的根模块调用一次yii.initModule()

⚠️注:这个不用手动调用了,在yii.js中初始化的时候已经调用过了。此处的说明仅仅是讲原理。

具体模块的应用实例请看: yii.validation.js

本文由 best 创作,采用 知识共享署名 3.0 中国大陆许可协议 进行许可。 可自由转载、引用,但需署名作者且注明文章出处。

共收到 0 条回复
没有找到数据。
添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册