我可以使用 angular-selectize 和 require.js 吗?
Can I use angular-selectize with require.js?
angular-selectize.js 需要 selectize.js 和 angular.js 到 运行。当我通过 require 加载它们时,没有 window.Selectize 属性 被暴露,这是 angular-selectize.js 所需要的。
这是来自 selectize.js
的片段
if (typeof define === 'function' && define.amd) {
define('selectize', ['jquery','sifter','microplugin'], factory);
} else if (typeof exports === 'object') {
module.exports = factory(require('jquery'), require('sifter'), require('microplugin'));
} else {
root.Selectize = factory(root.jQuery, root.Sifter, root.MicroPlugin);
}
以及来自 angular-selectize
的片段
link: function(scope, element, attrs, modelCtrl) {
Selectize.defaults.maxItems = null; //default to tag editor
var selectize,
config = angular.extend({}, Selectize.defaults, selectizeConfig, scope.config);
........
}
需要公开 Selectize 属性,因为它不可用,因为 selectize 进入
if (typeof define === 'function' && define.amd)
,全局未创建且出错
那么,使用 angular-selectize via require 的正确方法是什么?
我有同样的问题并通过将 Selectize
添加到 window
来解决。
(function (define) {
'use strict';
var dependencies = [
'selectize',
'angular',
'ngMessages',
'ngSelectize',
'ngLoad'
];
define(dependencies, function (Selectize) {
window.Selectize = Selectize;
...
angular-selectize.js 需要 selectize.js 和 angular.js 到 运行。当我通过 require 加载它们时,没有 window.Selectize 属性 被暴露,这是 angular-selectize.js 所需要的。
这是来自 selectize.js
的片段if (typeof define === 'function' && define.amd) {
define('selectize', ['jquery','sifter','microplugin'], factory);
} else if (typeof exports === 'object') {
module.exports = factory(require('jquery'), require('sifter'), require('microplugin'));
} else {
root.Selectize = factory(root.jQuery, root.Sifter, root.MicroPlugin);
}
以及来自 angular-selectize
的片段 link: function(scope, element, attrs, modelCtrl) {
Selectize.defaults.maxItems = null; //default to tag editor
var selectize,
config = angular.extend({}, Selectize.defaults, selectizeConfig, scope.config);
........
}
需要公开 Selectize 属性,因为它不可用,因为 selectize 进入
if (typeof define === 'function' && define.amd)
,全局未创建且出错
那么,使用 angular-selectize via require 的正确方法是什么?
我有同样的问题并通过将 Selectize
添加到 window
来解决。
(function (define) {
'use strict';
var dependencies = [
'selectize',
'angular',
'ngMessages',
'ngSelectize',
'ngLoad'
];
define(dependencies, function (Selectize) {
window.Selectize = Selectize;
...