在 IHP 的帮助文件中正确导入
Getting imports right in Helper files in IHP
我正在尝试将我的一些视图和控制器逻辑集中到 Application.Helper.Controller
和 Application.Helper.View
.
中各自的帮助程序文件中的帮助程序中
我发现我无法访问我有权访问的包,例如在我的控制器文件中。例如 Data.Text
和许多其他人。当我什至无法访问管道操作员时,我不再尝试全部导入它们。
与 View.hs
帮助文件相同,无法访问 hsx
语法。
有没有简单的方法可以解决这个问题?你如何解决这个问题?必须在此处手动导入吗?
我觉得在 Web/Controller
文件夹中创建 Helper 文件似乎更简单,因为该文件夹中的模块似乎可以毫无问题地执行正确的自动导入。
我的 Controller.hs 文件现在的样子,不支持像 Data.Text 和管道运算符这样的东西:
module Application.Helper.Controller (
module IHP.LoginSupport.Helper.Controller
) where
-- Here you can add functions which are available in all your controllers
import IHP.LoginSupport.Helper.Controller
import Generated.Types
type instance CurrentUserRecord = User
和不支持hsx语法的View.hs:
module Application.Helper.View (
-- To use the built in login:
module IHP.LoginSupport.Helper.View
) where
-- Here you can add functions which are available in all your views
-- To use the built in login:
import IHP.LoginSupport.Helper.View
在 Application.Helper.Controller
中你需要导入 IHP.ControllerPrelude
,像这样:
module Application.Helper.Controller (
module IHP.LoginSupport.Helper.Controller
) where
-- Here you can add functions which are available in all your controllers
import IHP.LoginSupport.Helper.Controller
import Generated.Types
import IHP.ControllerPrelude
type instance CurrentUserRecord = User
在 Application.Helper.View
中你需要导入 IHP.ViewPrelude
,像这样:
module Application.Helper.View (
-- To use the built in login:
module IHP.LoginSupport.Helper.View
) where
-- Here you can add functions which are available in all your views
-- To use the built in login:
import IHP.LoginSupport.Helper.View
import IHP.ViewPrelude
这应该添加到 IHP 项目模板中。
我正在尝试将我的一些视图和控制器逻辑集中到 Application.Helper.Controller
和 Application.Helper.View
.
我发现我无法访问我有权访问的包,例如在我的控制器文件中。例如 Data.Text
和许多其他人。当我什至无法访问管道操作员时,我不再尝试全部导入它们。
与 View.hs
帮助文件相同,无法访问 hsx
语法。
有没有简单的方法可以解决这个问题?你如何解决这个问题?必须在此处手动导入吗?
我觉得在 Web/Controller
文件夹中创建 Helper 文件似乎更简单,因为该文件夹中的模块似乎可以毫无问题地执行正确的自动导入。
我的 Controller.hs 文件现在的样子,不支持像 Data.Text 和管道运算符这样的东西:
module Application.Helper.Controller (
module IHP.LoginSupport.Helper.Controller
) where
-- Here you can add functions which are available in all your controllers
import IHP.LoginSupport.Helper.Controller
import Generated.Types
type instance CurrentUserRecord = User
和不支持hsx语法的View.hs:
module Application.Helper.View (
-- To use the built in login:
module IHP.LoginSupport.Helper.View
) where
-- Here you can add functions which are available in all your views
-- To use the built in login:
import IHP.LoginSupport.Helper.View
在 Application.Helper.Controller
中你需要导入 IHP.ControllerPrelude
,像这样:
module Application.Helper.Controller (
module IHP.LoginSupport.Helper.Controller
) where
-- Here you can add functions which are available in all your controllers
import IHP.LoginSupport.Helper.Controller
import Generated.Types
import IHP.ControllerPrelude
type instance CurrentUserRecord = User
在 Application.Helper.View
中你需要导入 IHP.ViewPrelude
,像这样:
module Application.Helper.View (
-- To use the built in login:
module IHP.LoginSupport.Helper.View
) where
-- Here you can add functions which are available in all your views
-- To use the built in login:
import IHP.LoginSupport.Helper.View
import IHP.ViewPrelude
这应该添加到 IHP 项目模板中。