## 框架基础库
* 框架前端 JavaScript 基础库放置在(./public/js/base.js),在开发过程中只需继承前后台基类模板后即可直接使用 框架基础脚本库的属性、方法、事件。
* 框架前端 JavaScript 后台库放置在(./public/js/admin.js),在开发后台管理时需继承后台基类模板后才能使用呆错后台脚本库的属性、方法、事件。
* 框架前端 JavaScript 前台库放置在(./public/js/front.js),在开发网站前台时需继承前台基类模板后才能使用呆错前台脚本库的属性、方法、事件。
* DaiCuo框架核心脚本库依赖于Jquery3、Bootstrap4;故在JS引入前需要先引入Jquery3与Bootstrap4。
* 呆错框架JavaScript[基础库](https://www.daicuo.org/help?type=javascript)所有属性、方法、事件可通过呆错官网的文档中心查阅。
* 自2.1.13版本起,为了减小基础库的体积,加快网页加载的速度,故将一些不常用的方法分拆打包在后台基础库(admin.js)、前台基础库(front.js)。
### 引入框架基础库
* 模板继承:在插件应用的对应模板里可使用(模板继承 机制)自动按顺序引入相关的Jquery、Bootstrap、base.js、zh-cn.js。
```
{extend name="apps/common/view/front.tpl" /}
{block name="header_meta"}......{/block}
{block name="header_header"}......{/block}
{block name="header_main"}......{/block}
{block name="header_footer"}......{/block}
```
* 传统引用:在未使用ThinkPhp模板引擎或继承基类模板的场景下,可使用传统的方法按顺序引入。
```
<script src="/public/js/base.js"
data-id="daicuo"
data-file="{$file}"
data-root="{$path_root}"
data-view="{$path_view}"
data-upload="{$path_upload}"
data-module="{$module}"
data-controll="{$controll}"
data-action="{$action}"
data-page="{$page}"
data-user-id="{$user.user_id|default=0}"
data-lang="{:config('default_lang')}"
></script>
```
## 插件脚本库
* 插件应用脚本放置在 apps/应用名/theme/主题名/base.js、在开发里需要自行创建该文件。
* 插件应用脚本必须在呆错框架基础脚本库创建后引入,所以在插件脚本库里可直接调用呆错核心脚本库的相关属性、方法、事件。
### 引入插件脚本库
* 模板继承:通过继承基类模板的方式会自动根据规则加载应用的脚本路径,以(apps/index/theme/default_pc/index/index.tpl)为例。
```
{block name="js"}
<script>
$(function(){
daicuo.lazyload.init();
daicuo.language.init({method:'auto'});
});
</script>
{/block}
```
* 传统引用:在未使用ThinkPhp模板引擎或继承基类模板的场景下,可使用传统的方法引入。
```
<script src="{:DcUrlJs($domain, $path_root.$path_view.'theme.js')}"></script>
```
## 调用呆错基础库方法实例
```
$(function(){
daicuo.lazyload.init();
daicuo.language.init({method:'auto'});
daicuo.page.init();
});
```