javascript - AngularJS - 在哪里放置第三方插件默认值?

标签 javascript angularjs optimization

假设我们有一个第三方插件,我们可以在其中设置一些选项作为属性值。

<button options="prop.options">

在 Controller 中我们有:

/**
 * More about $scope.prop
 * - No need to access $scope 
 * - It should access $window
 * - It's pretty large object (e.g. 100 lines)
 */
$scope.prop = {options: {}};

我想让 Controller 尽可能薄,但是移动这个对象的最佳位置是什么?在这种情况下什么被认为是好的做法?

最佳答案

对于这种类型的数据,创建服务通常是最佳选择。这提供了配置数据的集中源,并且可以注入(inject)到需要使用它的任何组件中。

app.service('pluginOptions', function($window) {
    return {
        options: {
            prop1: 'x'
            prop2: 'y'
        }
    };
});

app.controller('myCtrl', function(pluginOptions, $scope) {
    $scope.prop = pluginOptions.options;
});

关于javascript - AngularJS - 在哪里放置第三方插件默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36568754/

相关文章:

javascript - console.log 变量时 target.dispatchEvent 上的 TypeError

javascript - self 更新时更新 ng-repeat 中的模型

python - 抛物面(3D抛物线)曲面拟合python

javascript - 如何获取img标签的值?

javascript - 将鼠标悬停在多个图像上,一张一张。

controller - AngularJS:在不完全重新加载 Controller 的情况下更改哈希和路由

c++ - 当我知道类型时,如何避免虚拟调用?

javascript - JavaScript 有 indexOf(lambda) 或类似的吗?

javascript - 如何在 Sublime Text 3 中创建 console.log 片段?

javascript - 当我在 AngularJS 中有资源哈希时,如何调用删除?