zoukankan      html  css  js  c++  java
  • seajs使用记录

    关于base的默认路径:
    【官方说明】: 模块系统的基础路径即 base 的默认值,与 sea.js 的访问路径相关: 如果 sea.js 的访问路径是: http://example.com/assets/sea.js
    则 base 路径为: http://example.com/assets/
    当 sea.js 的访问路径中含有版本号时,base 不会包含 seajs/x.y.z 字串。 当 sea.js 有多个版本时,这样会很方便。
    如果 sea.js 的路径是: http://example.com/assets/seajs/1.0.0/sea.js
    则 base 路径是: http://example.com/assets/

    seajs的默认路径依赖:127.0.0.1/foo/assets/seajs/sea.js,当前sea.js所在的目录或seajs文件夹所在的目录【assets/】
    其他路径的话需要重新设置路径,比如127.0.0.1/foo/public/base/sea.js
    我要设置public为默认路径,在config里设置base:’./public’

    ‘./‘是当前默认目录,当前默认目录是网站根目录开始

    当然,也可以手工配置 base 路径:
    seajs.config({
    base: 'http://code.jquery.com/'
    });
    在模块代码里:
    require.resolve('jquery');
    // => http://code.jquery.com/jquery.js
    【注意】:一般请不要配置 base 路径,把 sea.js 放在合适的路径往往更简单一致。
    【参考】:https://github.com/seajs/seajs/issues/258


    引入后的调试方法:
    alert(require.resolve('jquery'));
    alert($); 


    常见问题
    问题一:
    改变了jquery.js存放的目录后,文件已经加载,但无法引用。 这个是因为路径于不匹配导致的。 你用的是从seajs官方下载的jquery源,它是打包好的cmd模块,只不过比较特殊而已。ID 是 jquery/jquery/1.10.1/jquery,seajs的define默认ID是于路径想匹配的,所以改变路径后就引用不到。 如果是非官方的jquery源,你就必须自己处理,暴露出方法接口:


    jquery.js

    define(function(require,exports,module) {
        module.exports = jQuery;
    });


    main.js

    define(function(require, exports, module) {
        var $ = require('jquery');
    })


    或者直接引用

    define(function(require, exports, module) {
         require('jquery');
    })


    【参考】:https://github.com/seajs/seajs/issues/962

  • 相关阅读:
    OPCUA+MQTT构建物联网通用框架
    上位机开发之单片机通信实践(一)
    上位机开发之三菱Q系列PLC通信实践
    H5中你意想不到的美好
    ModbusRtu通信报文详解【二】
    ModbusRtu通信报文详解【一】
    基于C#实现与JY61姿态角度传感器通信
    以数字资产模型为核心驱动的一站式IoT数据分析实践
    基于华为云IoT Studio自助生成10万行代码的奥秘
    一条物联网设备控制命令的一生
  • 原文地址:https://www.cnblogs.com/Qzhou/p/3438710.html
Copyright © 2011-2022 走看看