-
Notifications
You must be signed in to change notification settings - Fork 22
使用nACommonJS 入门及高级用法(bs.js 和 util.js)
iansun edited this page Mar 10, 2015
·
2 revisions
nACommonJS 的建立是为了方便开发者更好地与底层引擎交互(底层本地化引擎提供javascript形式的API供开发者使用). 核心部分全部封装到了bs.js 文件中,util.js 更多的是帮助、配置工具。(这两个js唯一依赖的jquery.js, jquery.js 影响力还是蛮大的,我们建议你一直使用)
同步更新的bs.js 和 utils.js 可以通过
https://github.com/Romanysoft/working/tree/master/DebugApp/Mac/Public/nACommonJS
进行查看.
###nACommonJS 入门
使用nACommonJS 最简单的方式,是在index.html 文件中直接引入
<!DOCTYPE html>
<head>
<meta charset="utf-8"/>
<link rel="stylesheet" href="styles/style.css"/>
</head>
<body>
<div id="layout">
<div id="test-editormd">
<textarea style="display:none;"></textarea>
</div>
</div>
<script src="common/es6-shim/es6-shim.min.js"></script>
<script src="common/jquery.min.js"></script>
<script src="js/util.js"></script>
<script src="js/bs.js"></script>
<script src="js/app.js"></script>
<script type="text/javascript">
window.UI.c$.launch()
</script>
</body>
</html>
同时,bs.js 及util.js 完全至此AMD/CMD方式导入,支持require.js方式
###nACommonJS 高级用法说明
#####【1】require.js 导入方式
main.js
require.config({
"baseUrl": "tjs",
"paths": {
"jquery": "../common/jquery/jquery.min",
"underscore": "../common/underscore/1.7.0/underscore-min.js",
"react": "../common/react/0.12.2/react.min",
"JSXTransformer": "../common/react/0.12.2/JSXTransformer",
"jsx": "../common/react/plugin/jsx",
"BS.b$": "../js/bs.min",
"BS.util": "../js/util.min"
},
"shim": {
"jquery": {
"exports": "$"
},
"underscore":{
"exports" : "_"
},
"react":{
"exports": "React"
},
"JSXTransformer": {
exports: "JSXTransformer"
},
"BS.b$":{
exports: "b$"
}
}
});
require(["react", "jsx!List"], function (React, List) {
alert(typeof react)
setInterval(function(){
"use strict";
React.renderComponent(
List({date:new Date()}),
//List(null),
document.getElementById('example')
);
}, 500)
});
require(["BS.b$", "BS.util"], function(b$, u){
console.log(b$.App.getAppName())
console.log(u.ConfigClass.domain)
});
window.BS.b$ 是访问前缀,简称b$
- 本地引擎( b$.pN, b$.pNative ) 获取
- 核心插件配置信息 :b$.pCorePlugin
- 内置购买插件IAP配置信息: b$.pIAPPlugin
- 内置购买插件IAP的API封装: b$.IAP
- 通知(Notice),调用本地引擎的API接口:b$.Notice
- App内容封装,包含了大部分底层API的javascript接口: b$.App
- 窗体控制部分javascript API接口: b$.Window
- 系统菜单控制部分(包括自定义菜单命令回调):b$.SystemMenus
- 剪贴板的操作:b$.Clipboard
- Dock部分的控制: b$.Dock
- 二进制扩展部分:b$.Binary
- 拖拽功能集成API接口:b$.enablePluginCore
- 本地引擎内置的任务队列处理: b$.createTask, b$.sendQueueEvent
- 本地引擎提供的打开文件、打开目录,保存文件、定位文件,预览文件的API调用:b$.importFiles,b$.selectOutDir,b$.selectOutFile,b$.revealInFinder,b$.previewFile
**后面,我们将提供简单的例子来说明如何使用
都是些公共方式,bs.js 依赖 util.js 各别函数。
大部分都是历史遗留的功能函数,并不需要过多使用
#**bs.js 及 util.js 开发者完全可以自己再重新组织编写自己的调用底层本地引擎的API **
####示例说明