steal-config

steal是一个依赖管理库,用于加载moduleId,这里讲一下steal.config配置

当加载steal.js后会自动加载stealconfig.js文件.

使用steal

http://javascriptmvc.com/docs/steal.use.html#section_Addsteal_jstoyourpage

  • 加载steal.js到page中
  • 配置steal的行为
  • 加载modules
  • 返回module值

示例目录

ROOT/steal/steal.js...myapp/myapp.jsmyapp.lessmymodule.jsindex.htmlstealconfig.js

steal目录, myapp目录, stealconfig.js

1)加载steal.js到page中

<script src='../steal/steal.js?myapp/myapp.js'>
</script>

或者:

<script src='../steal/steal.js?STARTFILE,ENV'>
</script>

包含steal目录的目录是root目录,默认,所有的module都从root目录加载,以下情况除外:

  • "http://" or "https://" like "http://foo.com/bar.js"
  • "/" like "/bar.js"
  • 或者通过steal.config修改了root目录路径

2) 配置steal的行为
steal.config(configOptions)允许配置steal加载module的行为:

作用于所有module(ex: changing the location of the root folder)

作用于单个module(ex:通过设置shim: 可以让 'steal/dev/dev.js' should not be added to production)
作用于startup module(ex:可以指定steal首次加载的module)

调用steal.config(configOptions)

当steal.js加载并运行后,你可以在application任何地方调用steal.confg,然而, 当steal.js加载后,它将自动加载stealconfig.js。

3)加载modules

使用steal(ids...)加载依赖的modules, ids像如下:

// in myapp/myapp.js
steal('components/item','person.js','./view.ejs')

steal先使用steal.id函数将传递给steal的id转化为moduleId, 然后通过steal.idToUri将moduleId转化为资源的uri路径.

steal.id和steal.idToUri行为可以通过steal.config的map和paths项进行配置,默认行为如下:

  • "components/item" is found in ROOT/components/item/item.js
  • "person.js" is found in ROOT/person.js
  • "./view.ejs" is found in ROOT/currentWorkId/view.ejs

4) 返回module值

在moduleIds项后,可以传一个definition函数,如:

// in myapp/myapp.js
steal('components/item','person.js','./view.ejs', function(item, Person, viewEJS){return MODULEVALUE;})

definition函数的参数是配置的每个module的值,如下无返回值,则该参数为undefined

javascriptmvc-steal相关推荐

  1. JavaScriptMVC学习(一)--Steal

    最近在学习JavaScriptMVC,网上的资料很少, 看得也是一头雾水. 感谢lyndon.lin, 问了你很多弱智问题,你都能很认真地回答. 现在还没能从整体上把握JavaScriptMVC, 只 ...

  2. JavaScriptMVC之View

    视图提供在JQuery中使用模板的一致接口. 当模板引擎注册它们,你就可以做以下的操作: 1.在Jquery中视图扩展了after,append,before,html,prepend,replace ...

  3. JavaScriptMVC之快速开发

    有些同学反映说,需要看太多的篇章才能明白如何使用JavaScriptMVC来开发,可不可以 用一篇把主要用到技术介绍一下,这样就可以快速入门,并且可以快速用到开发项目的. 这篇文章就是这个目的,下面我 ...

  4. 英伟达的STEAL AI让神经网络拥有更好的计算机视觉

    http://vr.sina.cn/news/2019-06-18/detail-ihxvchpr4245066.d.html 来自英伟达(Nvidia).多伦多大学(University of To ...

  5. d).关于steal lock

    http://developer.51cto.com/art/201108/282082.htm 这个选项的初衷是为了增强灵活性,当一个文件被其它人锁定后,仍然可以用"偷"的方式将 ...

  6. How I Used a JSON Deserialization Oday to Steal Your Money on the Blockchain

    JSON 反序列化和区块链有什么关系?我们实验室将在今年 Blackhat US 会议上发表这项研究. Hao Xing I Senior Security Researcher, Tencent S ...

  7. 理解CPU steal time

    Netflix 很关注CPU的Steal Time.他们的策略是:如果是当前虚拟机的Steal Time 超过了你们设置的 阈值,他们会关闭这台虚拟机并且在另外一台物理机上面重启. 如果你想要部署虚拟 ...

  8. CPU Steal time

    CPU Steal time 是指虚拟机vm需要执行某个命令但是没有抢到物理cpu来执行的时间. 其实现在arch/arm64/kernel/paravirt.c 这个特性对应一个kconfig CO ...

  9. 【博客529】linux cpu的 “steal time“含义

    linux cpu的 "steal time"含义 Steal Time Steal time is the percentage of time a virtual CPU wa ...

  10. kvm steal 溯源

    背景 一般我们通过 kvm guest 中的%steal 指标来看 CPU 的争抢.但是目前在Host上并没有相关的手段或者指标来监控Guest 是否发生了争抢. 本文主要介绍如何在Host 判断争抢 ...

最新文章

  1. 如何制作在线参考手册
  2. 输入对话框基于PyQt4的输入对话框
  3. 东芝移动硬盘拆解图_华为Mate40系列新技术曝光:海思闪存亮相,性能超三星东芝...
  4. git 忽略文件失效
  5. 第六讲 Python中的字符串(二)(字符串的操作)
  6. 【翻译】Ext JS最新技巧——2015-8-11
  7. malloc和new有什么区别
  8. 【JavaScript】Document对象学习
  9. Attribute ‘sklearn.linear_model._logistic.LogisticRegression.multi_class‘ must be explicitly set to
  10. Xshell中输入rz提示:-bash: rz: command not found
  11. 指定module_一个缺失已久的特性 — module模块
  12. android开发 停止运行程序,开发的时候老是报错 XXXXX程序已停止运行。
  13. (41)css 三大隐藏属性
  14. BUG解决:RuntimeError:Given groups=1,weight of size...expected input...but got 3 channels instead.
  15. 无处 不在的无线智能——6g 的关键驱动与研究挑战_一文看懂什么是 6G
  16. 关于连接参数-Ttext
  17. CE修改器教程总结1
  18. stata 将数据集变量名称导出_Stata 15 统计数据分析软件
  19. cvpr 深度估计_近两年 CVPR ICCV ECCV 相机位姿估计、视觉定位、SLAM相关论文汇总...
  20. 密歇根大学新进展:AI+可穿戴设备,20秒检测儿童内化障碍

热门文章

  1. Doxygen使用教程(个人总结)
  2. html高德地图api使用教程,快速上手-入门-教程-地图 JS API | 高德地图API
  3. 加码发力云游戏,谷歌和腾讯在云上终有一战?
  4. GOWIN革文超级增长引擎---B2B数字化整合营销体系
  5. 为网站搭建域名(腾讯云)
  6. 什么是放量和缩量,什么是成交量
  7. 金融学习之十六——资本市场线
  8. Exchange 2013 就地发现
  9. 云计算中的海量数据存储在哪_优化计算引擎和云存储之间的数据传输
  10. SpringBoot集成Kafka简单应用