Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将范围变量值传递给对象_Javascript_Angularjs - Fatal编程技术网

Javascript 将范围变量值传递给对象

Javascript 将范围变量值传递给对象,javascript,angularjs,Javascript,Angularjs,我有三个范围变量: 我试图将范围值传递给下面的对象,但失败并引发错误 $scope.content.new_line = "'\n'"; $scope.content.text1 = "Text.\n\n"; $scope.content.text2 = "Text.\n\n"; var content = { pageSize: $scope.pageSize, content: [ { text: "some text",

我有三个
范围
变量:

我试图将
范围
值传递给下面的对象,但失败并引发错误

$scope.content.new_line = "'\n'";
$scope.content.text1 = "Text.\n\n";
$scope.content.text2 = "Text.\n\n";

var content = {
    pageSize: $scope.pageSize,
    content: [
        {
            text: "some text",
            style: ['header', 'aligncenter']
        },
        $scope.content.new_line,
        $scope.content.text1,
        $scope.content.text2, {
            style: 'center'
        },
        '\n',
        'Text.\n\n', {
            text: 'Again some text',
            style: ['quote', 'small']
        }
    ]
};
有人能告诉我如何正确地将
范围
值传递到此
对象

我正在使用
pdfmake
库。。。

以下是一个正常的内容:

var docDefinition = {
  content: [
    'paragraph 1',
    'paragraph 2',
    {
      columns: [
        'first column is a simple text',
        [
          // second column consists of paragraphs
          'paragraph A',
          'paragraph B',
          'these paragraphs will be rendered one below another inside the column'
        ]
      ]
    }
  ]
};
尝试添加:

$scope.content = {}

在第一行:>

这可能是由于对
范围的定义时访问与运行时访问之间存在差异

var scope = {value: 5};

var content = {
    value: scope.value
};

scope.value = 6;
console.log(content.value);
在上面的代码段中,控制台日志将显示“5”。这是因为范围值是在定义时指定的。这里有一个替代方案:

var scope = {value: 5};

var content = {
    getValue: function() { return scope.value; }
};

scope.value = 6;
console.log(content.getValue());

这里控制台日志将显示“6”。我猜这不是您正在寻找的解决方案,请提供有关如何创建和访问此数据的更多详细信息,正确的解决方案可能更为明显。

是否愿意分享您遇到的错误?agreat@DanielA.White:我已经更新了帖子…“正常内容”与问题有什么关系?请发布错误消息及其指向的行。如果您不打算澄清问题,请发布答案(如果您已经解决了问题)或将其删除。