首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

method().bind(this) + Angular4 getting无法读取未定义的属性“”myFun“”

method().bind(this) + Angular4 getting无法读取未定义的属性“myFun”

这个问题是在使用Angular 4时遇到的一个错误。它表示在尝试访问一个未定义的属性"myFun"时出现了问题。解决这个问题的方法是使用bind()方法来绑定方法的上下文。

在JavaScript中,bind()方法用于创建一个新的函数,该函数的this值被绑定到指定的对象。在这种情况下,我们可以使用bind()方法将方法绑定到当前组件的上下文,以确保在方法中访问到正确的属性。

下面是解决这个问题的步骤:

  1. 确保在组件中定义了名为"myFun"的属性,并且已经正确初始化。
  2. 在需要使用"myFun"属性的地方,使用bind()方法将方法绑定到当前组件的上下文。例如:

method().bind(this.myFun)

这将确保在method()方法中可以正确访问到"myFun"属性。

关于Angular 4的更多信息和相关概念,可以参考腾讯云的Angular产品介绍页面:Angular产品介绍

请注意,以上答案仅供参考,具体解决方法可能因实际情况而异。建议在遇到问题时查阅相关文档或寻求开发社区的帮助。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

前端技术工具类文章

前沿 vue.draggable 属性名称 说明 group :group= "name",相同组之间可以相互拖拽 sort :sort= "true",是否开启内部排序,如果设置为false,它所在组无法排序...如果使用了第二条筛选规则,那么必须配置对照和 name,不然无法正确缓存。...如: obj.myFun.call(db);    // 德玛年龄 99 obj.myFun.apply(db);    // 德玛年龄 99 obj.myFun.bind(db)();   // 德玛年龄...2,对比call 、bind 、 apply 传参情况下 obj.myFun.call(db,'成都','上海');     // 德玛 年龄 99 来自 成都去往上海 obj.myFun.apply...成都去往上海 obj.myFun.bind(db,['成都','上海'])();   // 德玛 年龄 99 来自 成都, 上海去往 undefined 复制代码 微妙差距!

1.2K30
  • JS学习笔记,持续记录

    函数外部无法读取函数内部声明变量 ,函数内部可直接使用全局变量; 在 JavaScript 语言中, 只有函数内部子函数才能读取内部变量, 因此可以把闭包简单理解成“定义在一个函数内部函数”。...因为圆括号里面, 只能是表达式, 所以确保大括号只能解释为对象 。 3. 读取对象属性, 有两种方法, 一种是使用点运算符, 还有一种是使用方括号运算符。...如果对象自身和它原型, 都定义了一个同名属性, 那么优先读取对象自身属性, 这叫做“覆盖”( overriding) 。注意, 一级级向上, 在整个原型链上寻找某个属性, 对性能是有影响。...()、bind() 都是用来重定义 this 这个对象!...德玛 年龄 99 来自 成都去往上海 */ obj.myFun.bind(db,'成都','上海')(); /* 德玛 年龄 99 来自 成都去往上海 */ obj.myFun.bind

    78940

    PHP重载,不一样重载

    PHP所提供重载(overloading)是指动态地创建类属性和方法。我们是通过魔术方法(magic methods)来实现。 当调用当前环境下未定义或不可见属性或方法时,重载方法会被调用。...接下来将使用不可访问属性(inaccessible properties)和不可访问方法(inaccessible methods)来称呼这些未定义或不可见属性或方法。...传统重载是用于提供多个同名类方法,但各方法参数类型和个数不同 一、属性重载 public __set(string $name, mixed $value): void public __get...在给不可访问(protected 或 private)或不存在属性赋值时,__set() 会被调用。...读取不可访问(protected 或 private)或不存在属性值时,__get() 会被调用。

    1.3K20

    ES5和ES6函数你不知道区别【面试篇】 前言1. PolyFill2.性能上3 hooks和 class 性能4.用法上5.总结

    属性 AST 虽然新增了新 AST 元素,但是内部属性和方法相对于 function 来说增加了很多,所以两个性能基本差不多; 但是 class 定义代码更利于维护; 3 hooks...= new Point(10, 10); console.log(Point.distance(p1, p2)); // 7.0710678118654755 当static或prototype method...4.9 getter 和 setter 和function 一样,在“类”内部可以使用get和set关键字,对某个属性设置存值函数和取值函数,拦截该属性存取行为 class MyClass {...console.log(text); } } const my = new My(); const { printName } = logger; printName(); // 报错,print未定义...mixin 方法,用来将多个Class功能复制到一个新Class上; 我们可以简单来实现一个 mixins,核心是遍历 B,C原型属性,通过Object.defineProperty设置到 A上

    2K20

    来自1000多个项目的10大JavaScript错误浅析

    在Chrome里读取未定义对象属性或调用未定义对象方法时就会发生这个错误,在Chrome开发者控制台可以很容易地重现这个错误。...TypeError: ’undefined’ is not an object 在Safari里读取未定义对象属性或调用未定义对象方法时就会发生这个错误,在Safari开发者控制台可以很容易地重现这个错误...TypeError: null is not an object 在Safari里读取空(null)对象属性或调用空对象方法时就会发生这个错误,在Safari开发者控制台可以很容易地重现这个错误。...TypeError: Object doesn’t support property 在IE里读取未定义对象属性或调用未定义对象方法时就会发生这个错误,在IE开发者控制台可以很容易地重现这个错误。...Uncaught TypeError: Cannot set property 我们无法对undefined变量进行赋值或读取操作,否则的话会抛出“Uncaught TypeError: cannot

    6.2K80

    1000多个项目中十大JavaScript错误以及如何避免

    当你读取一个属性或调用一个未定义对象方法时,Chrome 中就会报出这样错误。 ? 导致这个错误发生原因有很多,常见一种情况是在渲染 UI 组件时,不正确地初始化状态。...这是在 Safari 中读取属性或调用未定义对象上方法时发生错误,这与 Chrome 上述错误基本相同,只是 Safari 使用不同错误消息。 ? 3....这是在 Safari 中读取属性或调用空对象上方法时发生错误。 ?...TypeError: Cannot Read Property ‘length’ 这是 Chrome 中发生错误,因为读取未定义长度属性变量。 ?...Uncaught TypeError: Cannot Set Property 当尝试访问未定义变量时,总会返回 undefined。我们也无法获取或设置 undefined 任何属性

    8.3K40

    1000多个项目中十大JavaScript错误以及如何避免

    当你读取一个属性或调用一个未定义对象方法时,Chrome 中就会报出这样错误。 [image.png] 导致这个错误发生原因有很多,常见一种情况是在渲染 UI 组件时,不正确地初始化状态。...这是在 Safari 中读取属性或调用未定义对象上方法时发生错误,这与 Chrome 上述错误基本相同,只是 Safari 使用不同错误消息。...这是在 Safari 中读取属性或调用空对象上方法时发生错误。...TypeError: Cannot Read Property ‘length’ 这是 Chrome 中发生错误,因为读取未定义长度属性变量。...我们也无法获取或设置 undefined 任何属性。在这种情况下,应用程序将抛出“Uncaught TypeError cannot set property of undefined”。

    6.2K30

    32个常考手写面试题,值得动手练一练

    (context)属性发生冲突,使用Symbol类型作为唯一值 将函数作为传入上下文(context)属性执行 函数执行完成后删除该属性 返回执行结果 Function.prototype.myCall...cxt[func](...args) : cxt[func](); delete cxt[func]; return res; } 3.bind实现 需要考虑: bind() 除了...this 外,还可传入多个参数; bind 创建新函数可能传入多个参数; 新函数可能被当做构造函数调用; 函数可能有返回值; 实现方法: bind 方法不会立即执行,需要返回一个待执行函数;(闭包)...属性中 //class中定义所有方法是不可枚举 //class中只能定义方法,不能定义对象,变量等 //class和方法内默认都是严格模式 //es5中constructor为隐式属性 class...__proto__ } } //instanceof 运算符用于判断构造函数 prototype 属性是否出现在对象原型链中任何位置。

    66920

    TP3.2.3框架文件上传操作实例详解

    例如,下面是一个带有附件上传表单提交: <form action="__URL__/upload" enctype="multipart/form-data" method="post" <input...为了更好使用上传功能,建议你服务器开启finfo模块支持 上传参数 在上传操作之前,我们可以对上传属性进行一些设置,Upload类支持属性设置包括: 属性 描述 maxSize 文件上传最大文件大小...$file['savename']; } } 每个文件信息又是一个记录了下面信息数组,包括: 属性 描述 key 附件上传表单名称 savepath 上传文件保存路径 name 上传文件原始名称...',array('__FILE__','val1','val2')); 如果需要使用上传原始文件名,可以采用__FILE__传入,所以上面的定义规则,最终结果是 myFun(‘上传文件名’,’val1...注意:如果get_user_id函数未定义的话,会直接以get_user_id字符串作为子目录名称保存。 子目录保存和文件命名规则可以结合使用。

    1.2K20

    1000个项目中前10名JavaScript错误介绍

    当你读取一个未定义对象属性或调用其方法时,这个错误会在 Chrome 中出现。 您可以很容易在 Chrome 开发者控制台中进行测试(尝试)。...TypeError: ‘undefined’ is not an object 这是在 Safari 中读取属性或调用未定义对象上方法时发生错误。...TypeError: null is not an object 这是在 Safari 中读取属性或调用空对象上方法时发生错误。...TypeError: Cannot read property ‘length’ 这是 Chrome 中发生错误,因为读取未定义变量长度属性。...Uncaught TypeError: Cannot set property 当我们尝试访问一个未定义变量时,它总是返回 undefined,我们不能获取或设置任何未定义属性

    6.2K10

    10 种最常见 Javascript 错误

    当你读取一个未定义对象属性或调用其方法时,这个错误会在 Chrome 中出现。 您可以很容易在 Chrome 开发者控制台中进行测试(尝试)。 ?...TypeError: ‘undefined’ is not an object 这是在 Safari 中读取属性或调用未定义对象上方法时发生错误。...TypeError: null is not an object 这是在 Safari 中读取属性或调用空对象上方法时发生错误。...TypeError: Cannot read property ‘length’ 这是 Chrome 中发生错误,因为读取未定义变量长度属性。 您可以在 Chrome 开发者控制台中进行测试。...Uncaught TypeError: Cannot set property 当我们尝试访问一个未定义变量时,它总是返回 undefined,我们不能获取或设置任何未定义属性

    6.8K80

    Laravel5.2之PHP重载(overloading)

    PHP中通过引入魔术方法来实现动态创建类属性和方法,包括属性重载魔术方法和方法重载魔术方法。当然,重载是在类外部发生,所以所有魔术方法必须声明public,而且参数不能引用传递。...PHP中是可以动态创建一个类中未定义属性或方法,这也是PHP这个语言一个比较灵活特性,如: class Person { } $person = new Person(); $person->...出name值是'PHP',访问未定义age()方法并不报错。...name) __unset(string $name) 1、当在类中定义魔术方法__set()时,给未定义或不可见属性赋值时会先触发__set(),可以使用__set()魔术方法来禁止动态创建属性...2、当在类中定义魔术方法__get()时,当读取未定义或不可见属性时就触发__get()方法: class Person { private $sex; public function

    3.1K31
    领券